CICD GitHub Actions에서 React + Firebase 프로젝트를 CI/CD로 자동 배포한 이야기 얼마 전의 웹 서비스를 만들 때 2020년에 릴리스된 GitHubActions 에서 CI/CD(계속적 통합/계속적 딜리버리)를 해 보았으므로, 가볍게 흐름을 투고합니다. 프로젝트를 수정 한 후 매번 빌드 또는 배포를 실행하는 것이 번거롭기 때문에 자동화하고 싶습니다. 트렌드 CI/CD를 사용한 적이 없기 때문에 공부하고 싶습니다 firebase login:ci 명령을 실행합니다. 컨테이너나 ... FirebaseReactGitHub자동 배포CICD 로컬에서 gitignore했던 파일을 포함하여 Bitrise로 빌드하고 싶습니다. 그 때 GitHub에 푸시하지 않은 API 키가 들어있는 plist 파일을 Bitrise에서 어떻게 생성시킬 것인가라는 벽에 직면했기 때문에 그것을 기사로했습니다. 시도에 빌드했지만 이 시점에서는 아직 리모트 리포지토리의 파일을 Bitrise에 옮겨 놓았기 때문에 당연히 테스트시에 아래의 에러가 발생합니다. 이번에는 API 키의 내용을 Key.plist에 저장하려고합니다. 여기에서 빌드시 파... CICDSwiftBitrise JetBrains의 정적 코드 분석 도구 Qodana를 GitLab CI에서 사용 앞으로 Qodana는 여전히 early access program의 서비스입니다 Qodana의 Docker Image 버전 업데이트, GitLab Runner 버전 업데이트로 작동하지 않을 수 있습니다. .gitlab-ci.yml은 다음과 같습니다. Qodana는 JetBrains (Intellij IDEA와 같은 개발자)가 현재 개발중인 정적 코드 분석 도구입니다. 공식적으로 Docker ... QodanaGitLab-CICDJetBrainsCICD Postman API를 조금 살펴 보았습니다. 1. Postman Desktop App에서 API 테스트 작성 및 업데이트 2. Postman API에서 모든 collection uid를 얻습니다. The Postman API endpoints to help you integrate Postman within your development toolchain. You can add new collections, update existing... CICDPostmanapi CircleCI의 machine Executor에서 build 작업에서 deploy 작업으로 파일 전달(Workspace) CircleCI machine Executor를 사용하여 "Docker 빌드 ~ 배포"를 수행하는 프로젝트에서 build job에서 생성 된 파일/디렉토리를 deploy job에 전달하는 단계를 적어 둡니다. 작업 사이에 Workspace를 통해 배포에 필요한 파일/디렉토리를 공유합니다. 후속 deploy job에 제공할 파일/디렉토리를 Workspace에 업로드합니다. 특히 빌드 작업의 마... GitHubCircleCI오구라. 그림 xCICD도커 [AWS] codecommit에 push되면 s3에 정적 콘텐츠를 출시하는 환경을 만들자. AWS에서 CI/CD 환경을 한 번 만들고 싶었기 때문에 만들어 보았습니다. aws의 서비스 "CodeCommit"과 "CodeBuild"를 사용합니다. CodeCommit 및 CodeBuild와 같은 자세한 설명은 생략하지만 CodeCommit은 소스 제어 서비스(git 사용)이고 CodeBuild는 빌드 서비스(테스트 및 빌드 자동화)입니다. 이번에는 CodeCommit에 자원이 push... CICDCodeCommitCodeBuildAWS Flagger에서 Blue/Green 배포를 시도했습니다. 요 전날 Flagger에서 Blue/Green 배치를 하는 안건이 있어, Flagger의 인스톨로부터 Blue/Green 배치의 동작을 확인하는 곳까지 한가지를 시도했으므로, 결과를 남겨 둔다. 이번은 Slack에의 통지를 설정했으므로, 갱신이 있거나 프로모션이 완료하거나 하면 Slack에 통지가 오도록 되어 있다. 그런 다음 Flagger에서 사용할 Canary CRD를 추가합니다. 명칭은... CICDflaggerkubernetes CodePipeline이 GHE를 지원하게되었습니다. 이 기사는 의 17일째 기사입니다. 이 기사에서는, 상기와 같은 사람, 원래 CodePipeline에 대해 무엇일까 하고 있는 사람을 위해서, CodePipeline에 대해 정리한 것이 되고 있습니다. 개발, 테스트, 배포까지의 프로세스를 자동화하는 서비스입니다. 파이프라인은 소프트웨어 변경이 릴리스 프로세스를 통과하는 방법을 설명하는 워크플로 구조입니다. 각 파이프라인은 일련의 Stage로... 지속적인 통합CodePipelineCICD지속적인 전달AWS CloudFormation 변경 세트를 보기 쉬운 표로 만들어 GitHub에 댓글 달기 타이틀의 건을 GitHub Actions와 쉘 스크립트로 실현합니다. (이하 CFn)의 관리 콘솔에서는 변경 세트의 내용을 표에서 확인할 수 있습니다. AWS CLI에서도 변경 세트의 내용을 얻을 수 있습니다. 다만 돌아오는 JSON은 인간이 읽을 수 있는 느낌이 아닙니다. 그래서이 JSON을 jq 명령으로 괴롭히고 Markdown 테이블로 만듭니다. 또한 GitHub의 끌어오기 요청에 댓글... CloudFormationGitHubActionsCICDBash Hugo에서 시작한 블로그 기사를 멋지게 관리합니다. Hugo에서 블로그를 시작하면 블로그 게시물을 다른 저장소에서 관리하면 커밋 로그가 더러워지지 않습니다. CI/CD를 사용하여 블로그 기사 저장소를 복제하고 빌드하는 파이프 라인을 구축하면 블로그 본문 소스를 만질 필요가 없습니다. 소스 코드를 관리할 때 Git을 사용하는 것이지만, 그렇게 하면 블로그 기사를 추가하기 위해서만 커밋 로그를 쌓아야 하고 커밋 로그가 매우 더러워져 버립니다. 기... HugoGitLabCICD블로그Git GitHub Actions에 code scanning을 도입해 보았습니다. 안녕하세요 네 번째 게시물입니다! 오늘은 GitHub에 최근 출시된 code scanning을 시험에 도입해 보았습니다! 사실은 PHP로 code scanning을 구현하고 싶었습니다만, 대응 언어는 'cpp', 'csharp', 'go', 'java', 'javascript', 'python'이었기 때문에, python으로 했습니다! code scanning이란? ・코드에 숨어 있는 보안 ... CICD파이썬GitHubActionsGitHub 초보자용 CI/CD 실천 - Part1 - 환경 구축편 환경 구축 <- 이번에는 여기 CI/CD 도구 구축 테스트 도구와의 협력 검사 도구와의 협력 환경 구축편에서는, CI/CD를 실천하는데 필요한 환경을 정돈합니다 Windows 10에서 가상화 소프트웨어 VirtualBox 준비 VirtualBox에서 가상 컴퓨터 Ubuntu 만들기 Ubuntu에서 Docker 컨테이너 실행 환경 구축 가상화 소프트웨어 준비 이번 CI/CD를 실천할 때 가상 ... CICD도커VirtualBox우분투 CI/CD를 katacoda로 체험(초보자용) - Part9(Re-writing History) 이 페이지에서는, 라고 하는 「브라우저로부터 무료로 공부용의 인스턴스를 기동할 수 있는 Web 서비스」를 이용해 CI/CD를 실천합니다 내용은 위의 링크를 따르므로 불명확한 점이 있으면 그곳에 문의하십시오. git rebase --interactive (--root)에서 저장소 내역 변경 가능 리포지토리 변경 방법의 흐름 git rebase --interactive (--root) (hash... 카타코다GitHub초보자CICDGit GitLab을 docker로 설정 CICD 도구 GitLab을 docker로 세우는 메모 GitLab Inc.가 개발 한 git 저장소 서비스/도구 (GitHub) SaaS 버전과 스스로 설정하는 "self-managed GitLab"가 있습니다. 소프트웨어는 MIT 라이센스 OSS 무료 CE(Community Edition) 및 유료 EE(Enterprise Edition) EE는 CE보다 기능이 풍부. 셀프 관리 GitL... CICD도커GitLab AWS CI/CD 공부 노트②:CodeBuild로 Docker 이미지 빌드 Cloud9에서 데이터 준비 CodeCommit リポジトリ 에 push하여 CodeBuild ビルドプロジェクト 에서 빌드하여 Docker 이미지를 만들고 ECR(Amazon Elastic Container Registry)의 リポジトリ 에 Docker 이미지를 push한다. 동작 확인은 Cloud9에서 Docker 컨테이너를 실행합니다. 이번에 만드는 구성 그럼, ECR 리포지토리를 만듭니다... ECRCodeCommitCodeBuildCICDcloud9 OpenShift Pipeline 입문 ~ Jenkins Pipeline을 통한 빌드 및 배포 이번에는 다음 기사에서 설명하는 Jenkins Pipeline 샘플을 만들고 실행해 보겠습니다. 먼저 Pipeline에서 애플리케이션의 컨테이너 이미지를 빌드하기 위한 BuildConfig를 만듭니다.--binary=true는 사전 빌드 된 응용 프로그램 바이너리가 런타임에 지정되어 빌드됨을 나타냅니다. (지정한 Wildfly 이미지는 원래 기사보다 새로운 것을 사용하고 있습니다) 그런 다음... CICDJenkinsopenshiftJenkinsPipeline CircleCI를 사용하여 Firebase에 개발 환경과 프로덕션 환경에 대한 CICD 구축 firebase에서의 개발을 효율화하기 위해 circleCI에서의 배포 자동화를 구축해 보았다. nuxt.js 프로젝트 만들기 firebase에 프로젝트를 두 개 세운다 (개발/프로덕션) firebase init 수동으로 초기 설정 CircleCI에서 자동 배포 설정 nuxt-create-app 에서 nuxt.js 프로젝트를 창조. 패키지 관리자는 npm, 렌더링 모드는 SPA를 선택하십시오... FirebaseCircleCInuxt.jsgit-flowCICD GitHub Actions에서 PR에 동일한 종류의 주석을 Upsert로 추가하는 방법 GitHub Actions의 Pull Request(이하 PR) 이벤트 트리거의 워크플로우에 있어서, 대상 코드의 Lint나 보안 스캔, terraform plan이나 CloudFormation Change Set등의 결과를 PR의 코멘트에 표시되면 뭔가와 기쁘지요? 본 기사에서는, 이 PR 코멘트를, Insert가 아닌 Upsert(없으면 Insert, 있으면 Update)로 투고하는 방법... CloudFormationGitHubActionsCICDGitHub 【GitHub Actions】 한 리포지토리에 push를 트리거로 다른 리포지토리의 워크 플로를 시작하는 방법 한 리포지토리에 대한 push를 트리거로, 또 다른 리포지토리의 GitHub Acions 워크플로를 시작하는 방법을 조사했을 때의 메모입니다. 환경 GitHub Actions: 2020년 6월 시점의 것 GitHub Rest API: v3 아래 그림과 같이 리포지토리 A에 push된 것을 계기로 리포지토리 B의 GitHub Actions 워크플로우를 실행하고 싶다는 것입니다. 최종적으로 완성... GitHubGitHubAPI시GitHubActionsCICD
GitHub Actions에서 React + Firebase 프로젝트를 CI/CD로 자동 배포한 이야기 얼마 전의 웹 서비스를 만들 때 2020년에 릴리스된 GitHubActions 에서 CI/CD(계속적 통합/계속적 딜리버리)를 해 보았으므로, 가볍게 흐름을 투고합니다. 프로젝트를 수정 한 후 매번 빌드 또는 배포를 실행하는 것이 번거롭기 때문에 자동화하고 싶습니다. 트렌드 CI/CD를 사용한 적이 없기 때문에 공부하고 싶습니다 firebase login:ci 명령을 실행합니다. 컨테이너나 ... FirebaseReactGitHub자동 배포CICD 로컬에서 gitignore했던 파일을 포함하여 Bitrise로 빌드하고 싶습니다. 그 때 GitHub에 푸시하지 않은 API 키가 들어있는 plist 파일을 Bitrise에서 어떻게 생성시킬 것인가라는 벽에 직면했기 때문에 그것을 기사로했습니다. 시도에 빌드했지만 이 시점에서는 아직 리모트 리포지토리의 파일을 Bitrise에 옮겨 놓았기 때문에 당연히 테스트시에 아래의 에러가 발생합니다. 이번에는 API 키의 내용을 Key.plist에 저장하려고합니다. 여기에서 빌드시 파... CICDSwiftBitrise JetBrains의 정적 코드 분석 도구 Qodana를 GitLab CI에서 사용 앞으로 Qodana는 여전히 early access program의 서비스입니다 Qodana의 Docker Image 버전 업데이트, GitLab Runner 버전 업데이트로 작동하지 않을 수 있습니다. .gitlab-ci.yml은 다음과 같습니다. Qodana는 JetBrains (Intellij IDEA와 같은 개발자)가 현재 개발중인 정적 코드 분석 도구입니다. 공식적으로 Docker ... QodanaGitLab-CICDJetBrainsCICD Postman API를 조금 살펴 보았습니다. 1. Postman Desktop App에서 API 테스트 작성 및 업데이트 2. Postman API에서 모든 collection uid를 얻습니다. The Postman API endpoints to help you integrate Postman within your development toolchain. You can add new collections, update existing... CICDPostmanapi CircleCI의 machine Executor에서 build 작업에서 deploy 작업으로 파일 전달(Workspace) CircleCI machine Executor를 사용하여 "Docker 빌드 ~ 배포"를 수행하는 프로젝트에서 build job에서 생성 된 파일/디렉토리를 deploy job에 전달하는 단계를 적어 둡니다. 작업 사이에 Workspace를 통해 배포에 필요한 파일/디렉토리를 공유합니다. 후속 deploy job에 제공할 파일/디렉토리를 Workspace에 업로드합니다. 특히 빌드 작업의 마... GitHubCircleCI오구라. 그림 xCICD도커 [AWS] codecommit에 push되면 s3에 정적 콘텐츠를 출시하는 환경을 만들자. AWS에서 CI/CD 환경을 한 번 만들고 싶었기 때문에 만들어 보았습니다. aws의 서비스 "CodeCommit"과 "CodeBuild"를 사용합니다. CodeCommit 및 CodeBuild와 같은 자세한 설명은 생략하지만 CodeCommit은 소스 제어 서비스(git 사용)이고 CodeBuild는 빌드 서비스(테스트 및 빌드 자동화)입니다. 이번에는 CodeCommit에 자원이 push... CICDCodeCommitCodeBuildAWS Flagger에서 Blue/Green 배포를 시도했습니다. 요 전날 Flagger에서 Blue/Green 배치를 하는 안건이 있어, Flagger의 인스톨로부터 Blue/Green 배치의 동작을 확인하는 곳까지 한가지를 시도했으므로, 결과를 남겨 둔다. 이번은 Slack에의 통지를 설정했으므로, 갱신이 있거나 프로모션이 완료하거나 하면 Slack에 통지가 오도록 되어 있다. 그런 다음 Flagger에서 사용할 Canary CRD를 추가합니다. 명칭은... CICDflaggerkubernetes CodePipeline이 GHE를 지원하게되었습니다. 이 기사는 의 17일째 기사입니다. 이 기사에서는, 상기와 같은 사람, 원래 CodePipeline에 대해 무엇일까 하고 있는 사람을 위해서, CodePipeline에 대해 정리한 것이 되고 있습니다. 개발, 테스트, 배포까지의 프로세스를 자동화하는 서비스입니다. 파이프라인은 소프트웨어 변경이 릴리스 프로세스를 통과하는 방법을 설명하는 워크플로 구조입니다. 각 파이프라인은 일련의 Stage로... 지속적인 통합CodePipelineCICD지속적인 전달AWS CloudFormation 변경 세트를 보기 쉬운 표로 만들어 GitHub에 댓글 달기 타이틀의 건을 GitHub Actions와 쉘 스크립트로 실현합니다. (이하 CFn)의 관리 콘솔에서는 변경 세트의 내용을 표에서 확인할 수 있습니다. AWS CLI에서도 변경 세트의 내용을 얻을 수 있습니다. 다만 돌아오는 JSON은 인간이 읽을 수 있는 느낌이 아닙니다. 그래서이 JSON을 jq 명령으로 괴롭히고 Markdown 테이블로 만듭니다. 또한 GitHub의 끌어오기 요청에 댓글... CloudFormationGitHubActionsCICDBash Hugo에서 시작한 블로그 기사를 멋지게 관리합니다. Hugo에서 블로그를 시작하면 블로그 게시물을 다른 저장소에서 관리하면 커밋 로그가 더러워지지 않습니다. CI/CD를 사용하여 블로그 기사 저장소를 복제하고 빌드하는 파이프 라인을 구축하면 블로그 본문 소스를 만질 필요가 없습니다. 소스 코드를 관리할 때 Git을 사용하는 것이지만, 그렇게 하면 블로그 기사를 추가하기 위해서만 커밋 로그를 쌓아야 하고 커밋 로그가 매우 더러워져 버립니다. 기... HugoGitLabCICD블로그Git GitHub Actions에 code scanning을 도입해 보았습니다. 안녕하세요 네 번째 게시물입니다! 오늘은 GitHub에 최근 출시된 code scanning을 시험에 도입해 보았습니다! 사실은 PHP로 code scanning을 구현하고 싶었습니다만, 대응 언어는 'cpp', 'csharp', 'go', 'java', 'javascript', 'python'이었기 때문에, python으로 했습니다! code scanning이란? ・코드에 숨어 있는 보안 ... CICD파이썬GitHubActionsGitHub 초보자용 CI/CD 실천 - Part1 - 환경 구축편 환경 구축 <- 이번에는 여기 CI/CD 도구 구축 테스트 도구와의 협력 검사 도구와의 협력 환경 구축편에서는, CI/CD를 실천하는데 필요한 환경을 정돈합니다 Windows 10에서 가상화 소프트웨어 VirtualBox 준비 VirtualBox에서 가상 컴퓨터 Ubuntu 만들기 Ubuntu에서 Docker 컨테이너 실행 환경 구축 가상화 소프트웨어 준비 이번 CI/CD를 실천할 때 가상 ... CICD도커VirtualBox우분투 CI/CD를 katacoda로 체험(초보자용) - Part9(Re-writing History) 이 페이지에서는, 라고 하는 「브라우저로부터 무료로 공부용의 인스턴스를 기동할 수 있는 Web 서비스」를 이용해 CI/CD를 실천합니다 내용은 위의 링크를 따르므로 불명확한 점이 있으면 그곳에 문의하십시오. git rebase --interactive (--root)에서 저장소 내역 변경 가능 리포지토리 변경 방법의 흐름 git rebase --interactive (--root) (hash... 카타코다GitHub초보자CICDGit GitLab을 docker로 설정 CICD 도구 GitLab을 docker로 세우는 메모 GitLab Inc.가 개발 한 git 저장소 서비스/도구 (GitHub) SaaS 버전과 스스로 설정하는 "self-managed GitLab"가 있습니다. 소프트웨어는 MIT 라이센스 OSS 무료 CE(Community Edition) 및 유료 EE(Enterprise Edition) EE는 CE보다 기능이 풍부. 셀프 관리 GitL... CICD도커GitLab AWS CI/CD 공부 노트②:CodeBuild로 Docker 이미지 빌드 Cloud9에서 데이터 준비 CodeCommit リポジトリ 에 push하여 CodeBuild ビルドプロジェクト 에서 빌드하여 Docker 이미지를 만들고 ECR(Amazon Elastic Container Registry)의 リポジトリ 에 Docker 이미지를 push한다. 동작 확인은 Cloud9에서 Docker 컨테이너를 실행합니다. 이번에 만드는 구성 그럼, ECR 리포지토리를 만듭니다... ECRCodeCommitCodeBuildCICDcloud9 OpenShift Pipeline 입문 ~ Jenkins Pipeline을 통한 빌드 및 배포 이번에는 다음 기사에서 설명하는 Jenkins Pipeline 샘플을 만들고 실행해 보겠습니다. 먼저 Pipeline에서 애플리케이션의 컨테이너 이미지를 빌드하기 위한 BuildConfig를 만듭니다.--binary=true는 사전 빌드 된 응용 프로그램 바이너리가 런타임에 지정되어 빌드됨을 나타냅니다. (지정한 Wildfly 이미지는 원래 기사보다 새로운 것을 사용하고 있습니다) 그런 다음... CICDJenkinsopenshiftJenkinsPipeline CircleCI를 사용하여 Firebase에 개발 환경과 프로덕션 환경에 대한 CICD 구축 firebase에서의 개발을 효율화하기 위해 circleCI에서의 배포 자동화를 구축해 보았다. nuxt.js 프로젝트 만들기 firebase에 프로젝트를 두 개 세운다 (개발/프로덕션) firebase init 수동으로 초기 설정 CircleCI에서 자동 배포 설정 nuxt-create-app 에서 nuxt.js 프로젝트를 창조. 패키지 관리자는 npm, 렌더링 모드는 SPA를 선택하십시오... FirebaseCircleCInuxt.jsgit-flowCICD GitHub Actions에서 PR에 동일한 종류의 주석을 Upsert로 추가하는 방법 GitHub Actions의 Pull Request(이하 PR) 이벤트 트리거의 워크플로우에 있어서, 대상 코드의 Lint나 보안 스캔, terraform plan이나 CloudFormation Change Set등의 결과를 PR의 코멘트에 표시되면 뭔가와 기쁘지요? 본 기사에서는, 이 PR 코멘트를, Insert가 아닌 Upsert(없으면 Insert, 있으면 Update)로 투고하는 방법... CloudFormationGitHubActionsCICDGitHub 【GitHub Actions】 한 리포지토리에 push를 트리거로 다른 리포지토리의 워크 플로를 시작하는 방법 한 리포지토리에 대한 push를 트리거로, 또 다른 리포지토리의 GitHub Acions 워크플로를 시작하는 방법을 조사했을 때의 메모입니다. 환경 GitHub Actions: 2020년 6월 시점의 것 GitHub Rest API: v3 아래 그림과 같이 리포지토리 A에 push된 것을 계기로 리포지토리 B의 GitHub Actions 워크플로우를 실행하고 싶다는 것입니다. 최종적으로 완성... GitHubGitHubAPI시GitHubActionsCICD