From 882a45d3982c49e3604faad6d089181af8d0e079 Mon Sep 17 00:00:00 2001 From: dannyrb Date: Fri, 15 Nov 2019 11:08:52 -0500 Subject: [PATCH 1/3] Remove e2e test before prod deploy --- .circleci/config.yml | 45 ++++++++++++++++++++++---------------------- 1 file changed, 23 insertions(+), 22 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 1f065eeb6..171d408c3 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -375,7 +375,7 @@ workflows: ### # Our workflow for building, deploying, and promoting builds across our # development, staging, and production environments. - ## + ### DEPLOY: jobs: - BUILD: @@ -396,31 +396,13 @@ workflows: type: approval requires: - DEPLOY_TO_STAGING - # TODO: PWA E2E Test against demo site - # E2E: PWA - - cypress/run: - name: 'E2E: PWA' - executor: deploy-to-prod-executor - browser: chrome - working_directory: platform/viewer - cache-key: 'yarn-packages-{{ checksum "yarn.lock" }}' - yarn: true - record: false - no-workspace: true - store_artifacts: true - post-steps: - - store_artifacts: - path: platform/viewer/cypress/screenshots - - store_test_results: - path: cypress/results - requires: - - PROMOTE_TO_PRODUCTION - DEPLOY_TO_PRODUCTION: requires: - - 'E2E: PWA' - + - PROMOTE_TO_PRODUCTION + ### # Unit and E2E tests have already run for PR_CHECKS # Re-running should not gain us any confidence here + ### RELEASE: jobs: - NPM_PUBLISH: @@ -434,3 +416,22 @@ workflows: - DOCKER_MASTER_PUBLISH: requires: - NPM_PUBLISH +# +# +# Potentially use to E2E test STAGING environment +# before publishing to production +# - cypress/run: +# name: 'E2E: PWA' +# executor: deploy-to-prod-executor +# browser: chrome +# working_directory: platform/viewer +# cache-key: 'yarn-packages-{{ checksum "yarn.lock" }}' +# yarn: true +# record: false +# no-workspace: true +# store_artifacts: true +# post-steps: +# - store_artifacts: +# path: platform/viewer/cypress/screenshots +# - store_test_results: +# path: cypress/results From b41e6f93f3bedc7e022bfb035f538713d6ade6a9 Mon Sep 17 00:00:00 2001 From: dannyrb Date: Fri, 15 Nov 2019 11:11:14 -0500 Subject: [PATCH 2/3] Add workflow images --- docs/latest/assets/img/WORKFLOW_DEPLOY.png | Bin 0 -> 7987 bytes docs/latest/assets/img/WORKFLOW_PR_CHECKS.png | Bin 0 -> 5813 bytes .../img/WORKFLOW_PR_OPTIONAL_DOCKER_PUBLISH.png | Bin 0 -> 4778 bytes docs/latest/assets/img/WORKFLOW_RELEASE.png | Bin 0 -> 6307 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/latest/assets/img/WORKFLOW_DEPLOY.png create mode 100644 docs/latest/assets/img/WORKFLOW_PR_CHECKS.png create mode 100644 docs/latest/assets/img/WORKFLOW_PR_OPTIONAL_DOCKER_PUBLISH.png create mode 100644 docs/latest/assets/img/WORKFLOW_RELEASE.png diff --git a/docs/latest/assets/img/WORKFLOW_DEPLOY.png b/docs/latest/assets/img/WORKFLOW_DEPLOY.png new file mode 100644 index 0000000000000000000000000000000000000000..3e562a7971dec8e364543073a0b792102090161f GIT binary patch literal 7987 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 literal 0 HcmV?d00001 diff --git a/docs/latest/assets/img/WORKFLOW_RELEASE.png b/docs/latest/assets/img/WORKFLOW_RELEASE.png new file mode 100644 index 0000000000000000000000000000000000000000..f3c2a80697307f0f7fec390e13be1cb86bf9b9ca GIT binary patch literal 6307 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 Date: Fri, 15 Nov 2019 12:02:08 -0500 Subject: [PATCH 3/3] docs: continous integrationn --- docs/latest/SUMMARY.md | 1 + docs/latest/continous-integration.md | 106 +++++++++++++++++++++++++++ 2 files changed, 107 insertions(+) create mode 100644 docs/latest/continous-integration.md diff --git a/docs/latest/SUMMARY.md b/docs/latest/SUMMARY.md index 4ffb4efe9..68a95b5a7 100644 --- a/docs/latest/SUMMARY.md +++ b/docs/latest/SUMMARY.md @@ -47,5 +47,6 @@ - [FAQ](frequently-asked-questions.md) - [Contributing](contributing/index.md) + - [Continuous Integration](continous-integration.md) - [Browser Support](browser-support.md) - [Help](help.md) diff --git a/docs/latest/continous-integration.md b/docs/latest/continous-integration.md new file mode 100644 index 000000000..793c41c09 --- /dev/null +++ b/docs/latest/continous-integration.md @@ -0,0 +1,106 @@ +# Continous Integration (CI) + +This repository uses `CircleCI` and `Netlify` for continous integration. + +## Deploy Previews + +[Netlify Deploy previews][deploy-previews] are generated for every pull request. +They allow pull request authors and reviewers to "Preview" the OHIF Viewer as if +the changes had been merged. + +Deploy previews can be configured by modifying the `netlify.toml` file in the +root of the repository. Some additional scripts/assets for netlify are included +in the root `.netlify` directory. + +## Workflows + +[CircleCI Workflows][circleci-workflows] are a set of rules for defining a +collection of jobs and their run order. They are self-documenting and their +configuration can be found in our CircleCI configuration file: +`.circleci/config.yml`. + +### Workflow: PR_CHECKS + +The PR_CHECKS workflow (Pull Request Checks) runs our automated unit and +end-to-end tests for every code check-in. These tests must all pass before code +can be merged to our `master` branch. + +
+ + workflow diagram + +
Workflow diagram for PR_CHECKS
+
+ +### Workflow: PR_OPTIONAL_DOCKER_PUBLISH + +The PR_OPTIONAL_DOCKER_PUBLISH workflow allows for "manual approval" to publish +the pull request as a tagged docker image. This is helpful when changes need to +be tested with the Google Adapter before merging to `master`. + +
+ + workflow diagram + +
Workflow diagram for PR_WORKFLOW_PR_OPTIONAL_DOCKER_PUBLISH
+
+ +> NOTE: This workflow will fail unless it's for a branch on our `upstream` +> repository. If you need this functionality, but the branch is from a fork, +> merge the changes to a short-lived `feature/` branch on `upstream` + +### Workflow: DEPLOY + +The DEPLOY workflow deploys the OHIF Viewer when changes are merged to master. +It uses the Netlify CLI to deploy assets created as part of the repository's PWA +Build process (`yarn run build`). The workflow allows for "Manual Approval" to +promote the build to `STAGING` and `PRODUCTION` environments. + +
+ + workflow diagram + +
Workflow diagram for WORKFLOW_DEPLOY
+
+ +| Environment | Description | URL | +| ----------- | ---------------------------------------------------------------------------------- | -------------------------- | +| Development | Always reflects latest changes on `master` branch. | [Netlify][netlify-dev] | +| Staging | For manual testing before promotion to prod. Keeps development workflow unblocked. | [Netlify][netlify-staging] | +| Production | Stable, tested, updated less frequently. | [Netlify][netlify-prod] | + +### Workflow: RELEASE + +The RELEASE workflow publishes our `npm` packages, updated documentation, and +`docker` image when changes are merged to master. `Lerna` and "Semantic Commit +Syntax" are used to independently version and publish the many packages in our +monorepository. If a new version is cut/released, a Docker image is created. +Documentation is generated with `gitbook` and pushed to our `gh-pages` branch. +GitHub hosts the `gh-pages` branch with GitHub Pages. + +- Platform Packages: https://github.com/ohif/viewers/#platform +- Extension Packages: https://github.com/ohif/viewers/#extensions +- Documentation: https://docs.ohif.org/ + +
+ + workflow diagram + +
Workflow diagram for WORKFLOW_RELEASE
+
+ +### HOTFIX + +_Not yet implemented_ + + + + +[deploy-previews]: https://www.netlify.com/blog/2016/07/20/introducing-deploy-previews-in-netlify/ +[circleci-workflows]: https://circleci.com/docs/2.0/workflows/ +[netlify-dev]: https://ohif-dev.netlify.com +[netlify-staging]: https://ohif-staging.netlify.com +[netlify-prod]: https://ohif-prod.netlify.com +