CircleCI CircleCI로 파이썬 테스트 자동화 CI란? 지속적 통합, CI(영문: continuous integration)는 모든 개발자의 작업 사본을 하루에 여러 번 공유된 메인라인에 병합하는 것입니다. (wikipedia) 통합이라고 들으면 수수께끼이지만, 요컨대 빌드, 테스트, 배포 작업을 자동화하는 개발 방식입니다. CI를 도입함으로써 소프트웨어 개발을 효율적으로 실시할 수 있는 것 같다. 이 기사에서는 CircleCI와 Git... CircleCI파이썬 CircleCI에서 환경 변수 사용 CircleCI에서 AWS EC2에 액세스할 때 특정 IP만 허용하고 싶었기 때문에 AWS 보안 그룹 ID를 config.yml에 하드 코딩했습니다. 그렇게 좋지 않기 때문에 CircleCI 환경 변수를 사용하도록 변경했으므로 그 방법을 남겨 둡니다. 아래의 공식 문서를 참고로 변경했습니다. 우선, CircleCI의 [Settings] - [Contexts]에서 "Create Context"... CircleCIAWS local (수중)에서 circleci의 localstack 컨테이너를 디버깅 circleci에 구축 한 localstack 컨테이너를 디버깅하는 방법 공유입니다. Primary 컨테이너는 python 컨테이너이고 localstack 컨테이너는 Primary 컨테이너가 아닙니다 circleci docker executor 사용 따라서 Primary 컨테이너가 아닌 컨테이너에 docker attach 로 붙이면 컨테이너의 출력이 보입니다 그러나 circleci 컨테이너는... CircleCIlocalLocalStack CircleCI에 새로운 Docker 이미지 cimg를 사용할 수 있게 된 것 같다! CircleCI의 차세대 convenience image로서 새로운 Docker 이미지가 등장하고 있었습니다. 보다 안정성과 캐시 효율성을 고려합니다. 자세한 것은 이쪽의 링크를 확인해 주세요. "circleci/node"는 node의 Dockerfile+CircleCI 라이브러리? 로 구성되어 있습니다. 그 때문에, node에 파괴적인 변경이 더해지면 「circleci/node」가 잘 기동... CircleCINode.js Rails 프로젝트에 CircleCI를 도입했지만 Gem 캐시가 작동하지 않을 때의 대응 방법 Rails 프로젝트에서 사용하는 CICD 툴로서 CircleCI를 도입 · ▼캐시가 효과가 없고, 매회 bundle install 를 하고 있는 것 같은 움직임 ▶︎ ▶︎ 다음은 CircleCI에서 bundle install의 캐시가 작동하지 않을 때의 해결 방법입니다. 해결 방법 bundle config set --local path 명령으로 Gem 설치 위치 지정 이전 캐시를 사용하지 않... CircleCI시Rails CircleCI config.yml 편지지 Rails 6/PostgreSQL/Rspec ※ 도 참조해 주십시오. 다음 페이지에 이전에 있던 샘플을 복사하여 개조한 것입니다(현재는 내용이 상당히 바뀌고 있습니다). config.yml 이하, 자신을 위한 해설. 무엇을 모른다. 나중에 조사한다. → 새로운 기사 에. E2E 테스트(headless Chrome)를 사용하는 경우는, 「-node-browsers」를 선택하는 것. PostgreSQL을 패스워드 없이 사용하는 경우는 이 ... CircleCIRails CircleCI 입문 Youtube를 보고 있으면 나오는, CircleCI라는 말. CI(Continuous Integration)/CD(Continuous Delivery)를 제공하는 서비스. 지속적인 통합: 애플리케이션 코드 최신화 및 테스트 지속적인 전달: 리포지토리에서 소스 배포 GitHub 또는 Bitbucket에 계정을 등록해야 합니다. 리포지토리를 만들고 .circleci라는 폴더를 만들고, 그 안의... CircleCI 【credentials】 CircleCI 테스트에서 오류! "ActiveRecord::StatementInvalid: Mysql2::Error: Table ‘〇〇’ doesn’t exist: SHOW FULL FIELDS FROM `〇〇`" 로컬에서 RSpec 테스트를 통과 한 후 CircleCI 테스트에서 제목 오류가되고 그것을 해결하기 전에 기록. 오류 내용에서 테이블이 없다면 db:migrate? 생각, 터미널에서 시도하십시오. 그러면 , 라고 한다. 가르쳐주는 거리에rails credentials:edit할 때, 파일을 여는 데 $EDITOR가 없습니다. 또한 검색하여 credentialsをedit하기위한 $EDITOR를... MySQLCircleCImaster.keySECRET_KEYcredentials CircleCI에서 Sass를 CSS로 변환하여 S3에 배포 CircleCI 작업에서 Sass를 CSS로 변환하고 미니화하고 S3에 배포하는 데 필요한 설정을 정리한 것입니다. my_repositoy 리포지토리의 assets/css/style.scss 를 style.min.css 로 변환 및 미니화하고 S3 의 production-bucket 에 assets/css/style.min.css 로 배포합니다. 리포지토리에 풀 요청 이 시점에서 실행되는 작... SassCircleCIS3 CircleCI를 사용하여 Firebase에 개발 환경과 프로덕션 환경에 대한 CICD 구축 firebase에서의 개발을 효율화하기 위해 circleCI에서의 배포 자동화를 구축해 보았다. nuxt.js 프로젝트 만들기 firebase에 프로젝트를 두 개 세운다 (개발/프로덕션) firebase init 수동으로 초기 설정 CircleCI에서 자동 배포 설정 nuxt-create-app 에서 nuxt.js 프로젝트를 창조. 패키지 관리자는 npm, 렌더링 모드는 SPA를 선택하십시오... FirebaseCircleCInuxt.jsgit-flowCICD CircleCI에서 pytest의 커버리지 결과 보기 테스트 커버리지 보고서를 HTML로 제출했지만 CircleCI에서 보는 방법을 모르겠습니다! 라는 방향으로, 어떻게 하면 커버리지 리포트를 CircleCI에서 보는 방법을 써 갑니다 상당히 강인하기 때문에 더 좋은 방법이 있다고 생각합니다. 뭔가 좋은 방법을 아는 분은 코멘트로 부탁합니다 적용 범위 보고서 config.yml을 변경하여 Artifacts로 액세스 할 수있게합니다. 어떻게 내어... CircleCI파이썬pytestcoverage CircleCI에서 두 개의 MySQL 데이터베이스에 연결하는 앱의 config.yml CircleCi가 V2로 마이그레이션하기 전부터, 2개의 데이타베이스(MySQL)에 접속하는 앱의 테스트를 실행시키고 있었습니다. CircleCi가 완전히 V1을 폐지함에 따라 V2로 이행했을 때 설정 방법을 검토하여 실현할 수 있었던 방법을 기재합니다. 이러한 구성의 앱을 가정합니다. DB 서버의 인스턴스는 하나입니다. circleci/config.yml 포인트는 환경 변수의 MYSQL_D... CircleCI시CircleCI2.0 에 가입(Sign up) - 신규 사용자 등록 GitHub의 계정을 만들면 그 흐름에서 CircleCI의 계정도 작성해 버리는 것이 좋은 습관일까 하고 기사에 정리해 보았습니다(GitHub Actions도 있습니다만). 덧붙여서 GitHub의 계정 작성에 관해서는, 이쪽에 정리해 두었습니다. 원하는 웹 브라우저를 사용하여 으로 이동합니다. 다행히 CircleCI에는 (GitHub와는 달리) 일본어 사이트가 준비되어 있습니다. 계정 만들기... CircleCI 커밋 메시지에 특정 문자열이 포함되어 있으면 특정 작업을 수행 할 수 있습니다. 이 기사에서는 CircleCI에서 "커밋 메시지에 특정 문자열이 포함되어 있으면 특정 작업을 수행하고 싶다"는 경우를 구현하는 방법을 소개합니다. 결론은 circleci-agent step halt 명령을 사용하여 비교적 간단합니다. 이번에는 CircleCI 2.1에서 동작 확인을 실시하고 있습니다. master 이외의 브랜치는 Unit test를 실행한다 master 브랜치는 Unit te... CircleCICircleCI2.1 기존 Rails 앱에 CircleCI를 도입한 단계 자체 제작 된 Rails 앱에 CircleCI를 사용하여 CI/CD를 도입했습니다. 이번에는 CircleCI와 GitHub와의 연계까지 실시합니다. 테스트 코드 분석 배포 다만, 이번은 도입 밖에 실시하지 않기 때문에, 정직 이상의 3개는 관계 없습니다. 무료 플랜이 붙어 있습니다 메이저 커다란 일본어 자료가 많다 (사활 문제) 하는 것은 이하의 3개. CicleCI에 등록 GitHub와 협... CircleCI시루비Rails5 【Circle CI】 Nuxt.js의 dotenv를 설정하여 환경 변수를 STG와 PRD로 나누기 현재 개발 프로젝트에서는 Nuxt.js를 이용하고 있으며 Circle CI를 사용하여 GKE에 자동 배포를 하고 있습니다. 참고 : 다만, 환경 변수를 STG와 PRD로 나누기에는 불충분한 순서였기 때문에, 비잊을 위해 새롭게 기사를 쓰기로 했습니다. Environment Variables에서 STG와 PRD를 위해 만든 환경 변수를 .env 파일에 쓰는 포석을 친다. 따로 나누면 이름은 아... CircleCIVue.jsnuxt.js.envCircleCI2.1 CircleCI+ecspresso로 ECS에 배포 GitHub에서 배포 브랜치 (예 : production 브랜치)에 병합되면 배포를 수행하고 싶다면 여러 가지 방법이 있다고 생각합니다. AWS CodePipeline을 사용하여 이미지 빌드 => 작업 업데이트 => 서비스 업데이트 CircleCI Orb(aws-ecr/aws-ecs)를 사용하여 배포 그러나 「더 알기 쉬운 것이 있는가 아닌가」정도의 기분으로 보고 있으면, 우연히 를 발견했으... CircleCIecspressoECS CircleCI의 사양을 높이고 싶습니다. CircleCI에서 컨테이너 스펙을 높이려면 resource_class를 지정해야 합니다. 이 기사는이 resource_class에 대한 간단한 설명입니다. CircleCI 2.1 작업의 컨테이너에 할당하는 CPU의 수와 메모리 용량의 조합은, 이하의 클래스로부터 지정할 수가 있습니다. 수업 가상 CPU 수 메모리 용량 작은 2GB medium 4GB medium+ 6GB 8GB xlarge... CircleCI CircleCI Orb 테스트를 자동화합시다. CircleCI의 Orb 무려 테스트 쓸 수 있습니다만, 문서를 읽어도 자동화까지 꽤 멀었으므로 써 남겨 둡니다. Orb 테스트를 작성하는 기사이므로 Orb는 이미 작성한 전제로 작성합니다. circleci/[email protected] 에서 동작 확인되었습니다. CircleCI의 Personal API Tokens Orb를 게시하기 위해 CircleCI API Token을 내고 환경 변수 C... CircleCItestorb WebGL의 TypeScript 환경을 만들어 보았습니다. 이 기사는 첫날입니다. UUUM에서는 Rails, AWS, UI 주위, 최근에는 앱 주위 등 폭넓게 하고 있습니다! 오늘 월요일이 12/1이라고 생각하면 어제였습니다. 첫날부터 하고 있습니다만 나는 괜찮습니다. 「Graphics 할 수 있는 사람 멋지다」 「WebGL 공부하고 싶다」라고 쭉 생각하고 있었으므로, 10월 말부터 그리고 WebGL의 공부를 조금 시작했습니다. 45장 정도까지 진행... CircleCIwebpackWebGLTypeScript 【CircleCI】 약간의 차이가 큰 차이 ~ 「No configuration was found in your project.」를 만난 이야기 ~ CircleCI를 도입하려고 프로젝트에 '.circleci'디렉토리와 'config.yaml'을 추가하여 연계된 GitHub 리포지토리에 push했지만 다음과 같은 오류가 발생했습니다. 오류 메시지를 읽으려면 "프로젝트에 구성 파일이 없습니다." 위에서 언급했듯이 프로젝트에 추가해야하지만 도대체 왜 ... "CircleCI No configuration was found in your pro... CircleCI시YAML CircleCI의 Manual Approval을 Slack에 알립니다 (Orb 사용) ↓ 기사에서 할 수있는 일을 CircleCI v2.1의 새로운 기능 인 을 이용하여 실현해 보겠습니다. Slack의 Incomming Webhook을 만듭니다 (절차 할애) 그 Webhook의 URL을 에 SLACK_WEBHOOK 라는 이름으로 등록합니다 config.yml에서 ↓와 같이 기술합니다. Orb는 아직도 황삭한 것이 많이 Web의 정보를 신용할 수 없기 때문에 에서 정보를 찾아보... CircleCI시 CircleCI에서 branch에 push는 테스트 환경에 배포하는 설정을 해 보았지만 S3과 CloudFront의 연결에서 조금 실수한 이야기 이번에는 보다 현실적인 제품 개발을 이미지하여 테스트 환경과 프로덕션 환경이 나뉘어 있다고 가정하고 branch에 대한 커밋을 테스트 환경, master에 대한 커밋을 프로덕션 환경에 배포하도록 s3과 CiecleCI 설정 했습니다. 그 중 S3의 설정으로 실수를 깨달았으므로, 대처 방법 포함 공유합니다. 전회의 설정치에 「테스트 환경의 bucket명」과 master에 push하지 않았을 경... CircleCICloudFrontS3AWS CircleCI에서 PHPUnit 병렬 실행 CircleCI 테스트의 병렬 실행은 테스트 파일을 인스턴스별로 분배함으로써 실현됩니다. 그러나 PHPUnit 명령줄( phpunit )은 여러 파일 이름을 받아 실행할 수 없습니다. 그래서, 파일명의 리스트를 인수에 있어서, 그 테스트를 실행하기 위한 phpunit.xml ( phpunit-partial.xml ) (을)를 생성하는 툴을 작성해 대응했습니다. phpunit-xml-gen.p... CircleCIPHPUnit CircleCI2.0+php-coveralls로 커버리지 배지를 보기 CircleCI2.0+php-coveralls에서 커버리지 배지를 생성하려고 했는데 Coveralls의 설명이 오래되었거나 php-coveralls의 설명이 미묘하거나 도중에 빠졌기 때문에 배지가 표시될 때까지 수행한 단계 을 비망록으로 남깁니다. 커버리지 배지를 표시하려면 을 사용합니다. 로그인하고 메뉴에서 대상 리포지토리를 활성화합니다. 활성화 한 후 DETAILS 버튼에서 Coveral... PHPCircleCIPHPUnitCircleCI2.0Coveralls CircleCI Orbs에서 배포 승인 버튼을 만들어 Slack에 알리기 이전에 이라는 기사를 썼는데, 이 구조라면 특정 브랜치에 병합한 타이밍에 자동 배포가 달려 버립니다. 프로덕션 환경만은. CircleCI Orbs를 사용하여 그 근처를 제어하고 싶습니다. 이미지로서는, 특정의 브랜치에 병합한 단계에서 Slack 알림이 와서 マージ=デプロイ 링크를 밟으면 가 표시되고 Visit Workflow 를 클릭하여 배포할 수 있는 메커니즘을 만들 수 있습니다. Circ... devopsCircleCI슬랙CircleCI2.1 Elm 페이지를 GitHub Pages에 게시하기위한 템플릿 이전부터라면 자신이 사용할까라고 생각하고 있었다 를 만들어 보았습니다. 18일째의 기사입니다. 늦어서 죄송합니다 😢 전제 있다고 가정하는 템플릿입니다. 리포지토리 초기화 GitHub에서 을 포크하거나, 에서 로컬로 복제된 리포지토리를 새 리포지토리로 푸시합니다. 포크한 경우 필요에 따라 리포지토리의 Settings에서 리포지토리 이름을 변경합니다. CircleCI에서 설정 CircleCI가 ... CircleCIGitHubgithub-pagesElm CircleCI1.0에서 php-imagick을 설치하려고 시도한 이야기 국부적으로 시험은 가지고 있더라도 CircleCI (1.0)에 시험이 통과하지 않는다. 조사해 보면 imagick의 클래스를 찾을 수 없다는 에러가 나온다. 아, CircleCI에도 ImageMagick을 인스톨하지 않으면 안되는지, 그럼 인스톨할까, 가벼운 마음으로 CircleCI를 괴롭히면 생각했던 것보다 빠져 버렸기 때문에 비망록으로서 메모. 테스트를 실행하기 전에 다음 명령을 실행합니... CircleCIImagickPHPImageMagick Capistrano 배포를 CircleCI에서 시도했습니다. 이번에는 CircleCI를 사용하여 Capistrano 배포를 수행하도록 시도했습니다. GUI 측에서는 Capistrano가 SSH로 서버에 로그인하기 위해 Key를 설정합니다. CircleCI 프로젝트 설정에서 SSH Permission 페이지로 이동합니다. 그래서 아래 화면이므로 Add SSH Key에서 연결 대상(도메인 또는 IP)과 SSH Key를 작성하고 저장합니다. GUI 설정은 ... CircleCIRails5Capistrano 이전 기사 보기
CircleCI로 파이썬 테스트 자동화 CI란? 지속적 통합, CI(영문: continuous integration)는 모든 개발자의 작업 사본을 하루에 여러 번 공유된 메인라인에 병합하는 것입니다. (wikipedia) 통합이라고 들으면 수수께끼이지만, 요컨대 빌드, 테스트, 배포 작업을 자동화하는 개발 방식입니다. CI를 도입함으로써 소프트웨어 개발을 효율적으로 실시할 수 있는 것 같다. 이 기사에서는 CircleCI와 Git... CircleCI파이썬 CircleCI에서 환경 변수 사용 CircleCI에서 AWS EC2에 액세스할 때 특정 IP만 허용하고 싶었기 때문에 AWS 보안 그룹 ID를 config.yml에 하드 코딩했습니다. 그렇게 좋지 않기 때문에 CircleCI 환경 변수를 사용하도록 변경했으므로 그 방법을 남겨 둡니다. 아래의 공식 문서를 참고로 변경했습니다. 우선, CircleCI의 [Settings] - [Contexts]에서 "Create Context"... CircleCIAWS local (수중)에서 circleci의 localstack 컨테이너를 디버깅 circleci에 구축 한 localstack 컨테이너를 디버깅하는 방법 공유입니다. Primary 컨테이너는 python 컨테이너이고 localstack 컨테이너는 Primary 컨테이너가 아닙니다 circleci docker executor 사용 따라서 Primary 컨테이너가 아닌 컨테이너에 docker attach 로 붙이면 컨테이너의 출력이 보입니다 그러나 circleci 컨테이너는... CircleCIlocalLocalStack CircleCI에 새로운 Docker 이미지 cimg를 사용할 수 있게 된 것 같다! CircleCI의 차세대 convenience image로서 새로운 Docker 이미지가 등장하고 있었습니다. 보다 안정성과 캐시 효율성을 고려합니다. 자세한 것은 이쪽의 링크를 확인해 주세요. "circleci/node"는 node의 Dockerfile+CircleCI 라이브러리? 로 구성되어 있습니다. 그 때문에, node에 파괴적인 변경이 더해지면 「circleci/node」가 잘 기동... CircleCINode.js Rails 프로젝트에 CircleCI를 도입했지만 Gem 캐시가 작동하지 않을 때의 대응 방법 Rails 프로젝트에서 사용하는 CICD 툴로서 CircleCI를 도입 · ▼캐시가 효과가 없고, 매회 bundle install 를 하고 있는 것 같은 움직임 ▶︎ ▶︎ 다음은 CircleCI에서 bundle install의 캐시가 작동하지 않을 때의 해결 방법입니다. 해결 방법 bundle config set --local path 명령으로 Gem 설치 위치 지정 이전 캐시를 사용하지 않... CircleCI시Rails CircleCI config.yml 편지지 Rails 6/PostgreSQL/Rspec ※ 도 참조해 주십시오. 다음 페이지에 이전에 있던 샘플을 복사하여 개조한 것입니다(현재는 내용이 상당히 바뀌고 있습니다). config.yml 이하, 자신을 위한 해설. 무엇을 모른다. 나중에 조사한다. → 새로운 기사 에. E2E 테스트(headless Chrome)를 사용하는 경우는, 「-node-browsers」를 선택하는 것. PostgreSQL을 패스워드 없이 사용하는 경우는 이 ... CircleCIRails CircleCI 입문 Youtube를 보고 있으면 나오는, CircleCI라는 말. CI(Continuous Integration)/CD(Continuous Delivery)를 제공하는 서비스. 지속적인 통합: 애플리케이션 코드 최신화 및 테스트 지속적인 전달: 리포지토리에서 소스 배포 GitHub 또는 Bitbucket에 계정을 등록해야 합니다. 리포지토리를 만들고 .circleci라는 폴더를 만들고, 그 안의... CircleCI 【credentials】 CircleCI 테스트에서 오류! "ActiveRecord::StatementInvalid: Mysql2::Error: Table ‘〇〇’ doesn’t exist: SHOW FULL FIELDS FROM `〇〇`" 로컬에서 RSpec 테스트를 통과 한 후 CircleCI 테스트에서 제목 오류가되고 그것을 해결하기 전에 기록. 오류 내용에서 테이블이 없다면 db:migrate? 생각, 터미널에서 시도하십시오. 그러면 , 라고 한다. 가르쳐주는 거리에rails credentials:edit할 때, 파일을 여는 데 $EDITOR가 없습니다. 또한 검색하여 credentialsをedit하기위한 $EDITOR를... MySQLCircleCImaster.keySECRET_KEYcredentials CircleCI에서 Sass를 CSS로 변환하여 S3에 배포 CircleCI 작업에서 Sass를 CSS로 변환하고 미니화하고 S3에 배포하는 데 필요한 설정을 정리한 것입니다. my_repositoy 리포지토리의 assets/css/style.scss 를 style.min.css 로 변환 및 미니화하고 S3 의 production-bucket 에 assets/css/style.min.css 로 배포합니다. 리포지토리에 풀 요청 이 시점에서 실행되는 작... SassCircleCIS3 CircleCI를 사용하여 Firebase에 개발 환경과 프로덕션 환경에 대한 CICD 구축 firebase에서의 개발을 효율화하기 위해 circleCI에서의 배포 자동화를 구축해 보았다. nuxt.js 프로젝트 만들기 firebase에 프로젝트를 두 개 세운다 (개발/프로덕션) firebase init 수동으로 초기 설정 CircleCI에서 자동 배포 설정 nuxt-create-app 에서 nuxt.js 프로젝트를 창조. 패키지 관리자는 npm, 렌더링 모드는 SPA를 선택하십시오... FirebaseCircleCInuxt.jsgit-flowCICD CircleCI에서 pytest의 커버리지 결과 보기 테스트 커버리지 보고서를 HTML로 제출했지만 CircleCI에서 보는 방법을 모르겠습니다! 라는 방향으로, 어떻게 하면 커버리지 리포트를 CircleCI에서 보는 방법을 써 갑니다 상당히 강인하기 때문에 더 좋은 방법이 있다고 생각합니다. 뭔가 좋은 방법을 아는 분은 코멘트로 부탁합니다 적용 범위 보고서 config.yml을 변경하여 Artifacts로 액세스 할 수있게합니다. 어떻게 내어... CircleCI파이썬pytestcoverage CircleCI에서 두 개의 MySQL 데이터베이스에 연결하는 앱의 config.yml CircleCi가 V2로 마이그레이션하기 전부터, 2개의 데이타베이스(MySQL)에 접속하는 앱의 테스트를 실행시키고 있었습니다. CircleCi가 완전히 V1을 폐지함에 따라 V2로 이행했을 때 설정 방법을 검토하여 실현할 수 있었던 방법을 기재합니다. 이러한 구성의 앱을 가정합니다. DB 서버의 인스턴스는 하나입니다. circleci/config.yml 포인트는 환경 변수의 MYSQL_D... CircleCI시CircleCI2.0 에 가입(Sign up) - 신규 사용자 등록 GitHub의 계정을 만들면 그 흐름에서 CircleCI의 계정도 작성해 버리는 것이 좋은 습관일까 하고 기사에 정리해 보았습니다(GitHub Actions도 있습니다만). 덧붙여서 GitHub의 계정 작성에 관해서는, 이쪽에 정리해 두었습니다. 원하는 웹 브라우저를 사용하여 으로 이동합니다. 다행히 CircleCI에는 (GitHub와는 달리) 일본어 사이트가 준비되어 있습니다. 계정 만들기... CircleCI 커밋 메시지에 특정 문자열이 포함되어 있으면 특정 작업을 수행 할 수 있습니다. 이 기사에서는 CircleCI에서 "커밋 메시지에 특정 문자열이 포함되어 있으면 특정 작업을 수행하고 싶다"는 경우를 구현하는 방법을 소개합니다. 결론은 circleci-agent step halt 명령을 사용하여 비교적 간단합니다. 이번에는 CircleCI 2.1에서 동작 확인을 실시하고 있습니다. master 이외의 브랜치는 Unit test를 실행한다 master 브랜치는 Unit te... CircleCICircleCI2.1 기존 Rails 앱에 CircleCI를 도입한 단계 자체 제작 된 Rails 앱에 CircleCI를 사용하여 CI/CD를 도입했습니다. 이번에는 CircleCI와 GitHub와의 연계까지 실시합니다. 테스트 코드 분석 배포 다만, 이번은 도입 밖에 실시하지 않기 때문에, 정직 이상의 3개는 관계 없습니다. 무료 플랜이 붙어 있습니다 메이저 커다란 일본어 자료가 많다 (사활 문제) 하는 것은 이하의 3개. CicleCI에 등록 GitHub와 협... CircleCI시루비Rails5 【Circle CI】 Nuxt.js의 dotenv를 설정하여 환경 변수를 STG와 PRD로 나누기 현재 개발 프로젝트에서는 Nuxt.js를 이용하고 있으며 Circle CI를 사용하여 GKE에 자동 배포를 하고 있습니다. 참고 : 다만, 환경 변수를 STG와 PRD로 나누기에는 불충분한 순서였기 때문에, 비잊을 위해 새롭게 기사를 쓰기로 했습니다. Environment Variables에서 STG와 PRD를 위해 만든 환경 변수를 .env 파일에 쓰는 포석을 친다. 따로 나누면 이름은 아... CircleCIVue.jsnuxt.js.envCircleCI2.1 CircleCI+ecspresso로 ECS에 배포 GitHub에서 배포 브랜치 (예 : production 브랜치)에 병합되면 배포를 수행하고 싶다면 여러 가지 방법이 있다고 생각합니다. AWS CodePipeline을 사용하여 이미지 빌드 => 작업 업데이트 => 서비스 업데이트 CircleCI Orb(aws-ecr/aws-ecs)를 사용하여 배포 그러나 「더 알기 쉬운 것이 있는가 아닌가」정도의 기분으로 보고 있으면, 우연히 를 발견했으... CircleCIecspressoECS CircleCI의 사양을 높이고 싶습니다. CircleCI에서 컨테이너 스펙을 높이려면 resource_class를 지정해야 합니다. 이 기사는이 resource_class에 대한 간단한 설명입니다. CircleCI 2.1 작업의 컨테이너에 할당하는 CPU의 수와 메모리 용량의 조합은, 이하의 클래스로부터 지정할 수가 있습니다. 수업 가상 CPU 수 메모리 용량 작은 2GB medium 4GB medium+ 6GB 8GB xlarge... CircleCI CircleCI Orb 테스트를 자동화합시다. CircleCI의 Orb 무려 테스트 쓸 수 있습니다만, 문서를 읽어도 자동화까지 꽤 멀었으므로 써 남겨 둡니다. Orb 테스트를 작성하는 기사이므로 Orb는 이미 작성한 전제로 작성합니다. circleci/[email protected] 에서 동작 확인되었습니다. CircleCI의 Personal API Tokens Orb를 게시하기 위해 CircleCI API Token을 내고 환경 변수 C... CircleCItestorb WebGL의 TypeScript 환경을 만들어 보았습니다. 이 기사는 첫날입니다. UUUM에서는 Rails, AWS, UI 주위, 최근에는 앱 주위 등 폭넓게 하고 있습니다! 오늘 월요일이 12/1이라고 생각하면 어제였습니다. 첫날부터 하고 있습니다만 나는 괜찮습니다. 「Graphics 할 수 있는 사람 멋지다」 「WebGL 공부하고 싶다」라고 쭉 생각하고 있었으므로, 10월 말부터 그리고 WebGL의 공부를 조금 시작했습니다. 45장 정도까지 진행... CircleCIwebpackWebGLTypeScript 【CircleCI】 약간의 차이가 큰 차이 ~ 「No configuration was found in your project.」를 만난 이야기 ~ CircleCI를 도입하려고 프로젝트에 '.circleci'디렉토리와 'config.yaml'을 추가하여 연계된 GitHub 리포지토리에 push했지만 다음과 같은 오류가 발생했습니다. 오류 메시지를 읽으려면 "프로젝트에 구성 파일이 없습니다." 위에서 언급했듯이 프로젝트에 추가해야하지만 도대체 왜 ... "CircleCI No configuration was found in your pro... CircleCI시YAML CircleCI의 Manual Approval을 Slack에 알립니다 (Orb 사용) ↓ 기사에서 할 수있는 일을 CircleCI v2.1의 새로운 기능 인 을 이용하여 실현해 보겠습니다. Slack의 Incomming Webhook을 만듭니다 (절차 할애) 그 Webhook의 URL을 에 SLACK_WEBHOOK 라는 이름으로 등록합니다 config.yml에서 ↓와 같이 기술합니다. Orb는 아직도 황삭한 것이 많이 Web의 정보를 신용할 수 없기 때문에 에서 정보를 찾아보... CircleCI시 CircleCI에서 branch에 push는 테스트 환경에 배포하는 설정을 해 보았지만 S3과 CloudFront의 연결에서 조금 실수한 이야기 이번에는 보다 현실적인 제품 개발을 이미지하여 테스트 환경과 프로덕션 환경이 나뉘어 있다고 가정하고 branch에 대한 커밋을 테스트 환경, master에 대한 커밋을 프로덕션 환경에 배포하도록 s3과 CiecleCI 설정 했습니다. 그 중 S3의 설정으로 실수를 깨달았으므로, 대처 방법 포함 공유합니다. 전회의 설정치에 「테스트 환경의 bucket명」과 master에 push하지 않았을 경... CircleCICloudFrontS3AWS CircleCI에서 PHPUnit 병렬 실행 CircleCI 테스트의 병렬 실행은 테스트 파일을 인스턴스별로 분배함으로써 실현됩니다. 그러나 PHPUnit 명령줄( phpunit )은 여러 파일 이름을 받아 실행할 수 없습니다. 그래서, 파일명의 리스트를 인수에 있어서, 그 테스트를 실행하기 위한 phpunit.xml ( phpunit-partial.xml ) (을)를 생성하는 툴을 작성해 대응했습니다. phpunit-xml-gen.p... CircleCIPHPUnit CircleCI2.0+php-coveralls로 커버리지 배지를 보기 CircleCI2.0+php-coveralls에서 커버리지 배지를 생성하려고 했는데 Coveralls의 설명이 오래되었거나 php-coveralls의 설명이 미묘하거나 도중에 빠졌기 때문에 배지가 표시될 때까지 수행한 단계 을 비망록으로 남깁니다. 커버리지 배지를 표시하려면 을 사용합니다. 로그인하고 메뉴에서 대상 리포지토리를 활성화합니다. 활성화 한 후 DETAILS 버튼에서 Coveral... PHPCircleCIPHPUnitCircleCI2.0Coveralls CircleCI Orbs에서 배포 승인 버튼을 만들어 Slack에 알리기 이전에 이라는 기사를 썼는데, 이 구조라면 특정 브랜치에 병합한 타이밍에 자동 배포가 달려 버립니다. 프로덕션 환경만은. CircleCI Orbs를 사용하여 그 근처를 제어하고 싶습니다. 이미지로서는, 특정의 브랜치에 병합한 단계에서 Slack 알림이 와서 マージ=デプロイ 링크를 밟으면 가 표시되고 Visit Workflow 를 클릭하여 배포할 수 있는 메커니즘을 만들 수 있습니다. Circ... devopsCircleCI슬랙CircleCI2.1 Elm 페이지를 GitHub Pages에 게시하기위한 템플릿 이전부터라면 자신이 사용할까라고 생각하고 있었다 를 만들어 보았습니다. 18일째의 기사입니다. 늦어서 죄송합니다 😢 전제 있다고 가정하는 템플릿입니다. 리포지토리 초기화 GitHub에서 을 포크하거나, 에서 로컬로 복제된 리포지토리를 새 리포지토리로 푸시합니다. 포크한 경우 필요에 따라 리포지토리의 Settings에서 리포지토리 이름을 변경합니다. CircleCI에서 설정 CircleCI가 ... CircleCIGitHubgithub-pagesElm CircleCI1.0에서 php-imagick을 설치하려고 시도한 이야기 국부적으로 시험은 가지고 있더라도 CircleCI (1.0)에 시험이 통과하지 않는다. 조사해 보면 imagick의 클래스를 찾을 수 없다는 에러가 나온다. 아, CircleCI에도 ImageMagick을 인스톨하지 않으면 안되는지, 그럼 인스톨할까, 가벼운 마음으로 CircleCI를 괴롭히면 생각했던 것보다 빠져 버렸기 때문에 비망록으로서 메모. 테스트를 실행하기 전에 다음 명령을 실행합니... CircleCIImagickPHPImageMagick Capistrano 배포를 CircleCI에서 시도했습니다. 이번에는 CircleCI를 사용하여 Capistrano 배포를 수행하도록 시도했습니다. GUI 측에서는 Capistrano가 SSH로 서버에 로그인하기 위해 Key를 설정합니다. CircleCI 프로젝트 설정에서 SSH Permission 페이지로 이동합니다. 그래서 아래 화면이므로 Add SSH Key에서 연결 대상(도메인 또는 IP)과 SSH Key를 작성하고 저장합니다. GUI 설정은 ... CircleCIRails5Capistrano 이전 기사 보기