From 93cdc0fde5f7936169ea7e8eb9954dc9c5e0900e Mon Sep 17 00:00:00 2001 From: Philipp Potisk Date: Fri, 29 Nov 2019 14:14:19 +0100 Subject: [PATCH] Added docu for dev-system, branching, releasing, ci/cd --- docs/branching-strategy.md | 16 +++++++++ docs/continuous-integration-and-delivery.md | 34 ++++++++++++++++++ docs/creating-releases.md | 37 +++++++++++++++++++ docs/dev-system.md | 38 ++++++++++++++++++++ docs/figures/aws-architecture.png | Bin 0 -> 78188 bytes 5 files changed, 125 insertions(+) create mode 100644 docs/branching-strategy.md create mode 100644 docs/continuous-integration-and-delivery.md create mode 100644 docs/creating-releases.md create mode 100644 docs/dev-system.md create mode 100644 docs/figures/aws-architecture.png diff --git a/docs/branching-strategy.md b/docs/branching-strategy.md new file mode 100644 index 000000000..105d60d87 --- /dev/null +++ b/docs/branching-strategy.md @@ -0,0 +1,16 @@ +The goals for our branching strategy are: +* The master-branch should be deployable at any time. This implies a stable build and the assurance that the core-functionality is provided at any time when cloning the master. +* The master-branch should stay active. As collaboratively working with multiple developers, we encourage merging the code as frequently as possible. This will potentially disclose issues at an early stage and facilitate the repair. Furthermore, it makes clear that the master-branch is the preferred choice that newcomers want to clone. +* In order not to waste time the branching strategy should stay as simple as possible. + +Among a bunch of various strategies we have chosen *GitHub Flow*, which is a lightweight branching-strategy encouraged by the GitHub dev-teams. Details can be found here: https://guides.github.com/introduction/flow/ +The following recipe shortly describes the typical steps that developers need to be take into account when updating the code base: + +![](https://hackernoon.com/hn-images/1*iHPPa72N11sBI_JSDEGxEA.png) + +1. ***Create a branch***: When implementing a new feature, some improvement or a bugfix, a new branch should be created of the master-branch. In order to preserve an organized git-repo, the new branches should go under: `topic/` , whereas the name of the branch should reflect the intention of the branch itself. Use the GitHub-issue name as part of the branch-name, if there is a corresponding issue available. + +2. ***Commit some code***: Add your changes to the new branch and commit regularly with a descriptive commit-message. This builds up a transparent history of work and makes a roll back of changes easier. +3. ***Open a Pull Request (PR)***: Once your changes are complete (or you want some feedback at an early stage of development) open a PR against the master-branch. A PR initiates a discussion with the maintainer, which will review your code at this point. Furthermore, the [[CI/CD process|Continuous-Integration-and-Delivery]] will be kicked off and your code will be deployed to the dev-system. +4. ***Discuss, review code and deployment***: Wait for feedback of the maintainer and check the deployment at the dev-system. In case of contributing a new driver the maintainer will also add the deployment-scripts in the scope of this PR. You may also be requested to make some changes to your code. Finally, the new changes should be safely incorporated to the master-branch and the updated universal-resolver is running smoothly in dev-environment. +5. ***Merge to the master-branch***: If all parties involved in the discussion are satisfied, the maintainer will merge the PR into the master-branch and will close the PR itself. You are free to delete your branch as all changes have already been incorporated in the master. diff --git a/docs/continuous-integration-and-delivery.md b/docs/continuous-integration-and-delivery.md new file mode 100644 index 000000000..c025b6d4a --- /dev/null +++ b/docs/continuous-integration-and-delivery.md @@ -0,0 +1,34 @@ +This section describes the building-blocks and ideas of the implemented CI/CD pipeline. In case of issues or requests in the scope of CI/CD, please directly consult the maintainers of the repository. + +## Intro + +The CI/CD pipeline helps achieving the following goals: +* Detection of problems asap +* Short and robust release cycles +* Avoidance of repetitive, manual tasks +* Increase of Software Quality + +After every code change the CI/CD pipeline builds all software packages/Docker containers automatically. Once the containers are built, they are automatically deployed to the dev-system. By these measures building as well as deployment issues are immediately discovered. Once the freshly built containers are deployed, automatic tests are run in order to verify the software and to detect functional issues. + +## Building Blocks + +The CI/CD pipeline is constructed by using GitHub Actions. The workflow (workflow file https://github.com/philpotisk/universal-resolver/blob/master/.github/workflows/universal-resolver-ws.yml ) is run after every push to the master and on ever PR against master. +The workflow consists of several steps. Each step is implemented as Docker container that performs the relevant actions. Currently, the two main steps are: + +1. Building the resolver +2. Deploying the resolver + +The build-step uses this container https://github.com/philpotisk/github-action-docker-build-push, which generically builds a Docker image and pushes it to Docker Hub at https://hub.docker.com/u/universalresolver +The second step takes the image and deploys it (create or update) to the configured Kubernetes cluster. The Docker container fulfilling this step can be found here: https://github.com/philpotisk/github-action-deploy-eks + +## Steps of the CI/CD Workflow + +![](https://user-images.githubusercontent.com/55081379/68245944-2a78db00-0018-11ea-8ebe-22c19d5ad096.PNG) + +1. Dev pushes code to GitHub +2. GitHub Actions (GHA) is triggerd by the „push“ event, clones the repo and runs the workflow for every container: + * (a) Docker build + * (b) Docker push (Docker image goes to DockerHub) + * (c) Deploy to Kubernetes + * (d) Runs a test-container +3. Manual and automated feedback diff --git a/docs/creating-releases.md b/docs/creating-releases.md new file mode 100644 index 000000000..a2a8a97f6 --- /dev/null +++ b/docs/creating-releases.md @@ -0,0 +1,37 @@ +This guide explains the release process of the universal resolver. + +## Version Number + +The concept of versioning is in-line with Semantic Versioning as described here https://semver.org/. +Each release is defined by the version number, which is composed by the three parts MAJOR.MINOR.PATCH. +1. MAJOR version for incompatible API changes. +2. MINOR version when adding functionality in a backwards compatible manner. +3. PATCH version when making backwards compatible bug fixes. +Further details should be taken from the link above. + +## Release Process +According to the [roadmap](https://github.com/philpotisk/universal-resolver/wiki/Roadmap-Universal-Resolver) major and minor releases are planned and scheduled. Patch-versions, may have happened spontaneously according to urgent bugfixes. +For each minor release there is a dedicated branch following the naming pattern: MAJOR.MINOR.x (e.g. 3.1.x). In this branch the code-base for this particular release will be hardened. The code has to pass the static code analysis, which detects potential issues with the code in terms of quality and security. Furthermore, this code will be manually deployed in a staging/ production-like environment, where manual and automatic testing are taking place. Once the release fulfills the desired standards, it will be packaged and released to the GitHub release page, and announced at (TODO: wiki/whats-new-in-universal-resolver-.x). + +Steps for releasing a new version: +1. Create a release branch from the master. + + `git checkout -b 3.1.x` + + `git push --set-upstream origin 3.1.x` + +Open universal-resolver/.github/workflows/universal-resolver-ws.yml and adjust the CONTAINER_TAG to the specific release number. For example: 3.1.0 +In the same file, change also the branch the CI/CD workflow is listening on, to 3.1.x. In future, when there will be a staging-system in place, also the KUBE_KONFIG_DATA needs to be changed, so the deployment will go to the staging system, rather to the dev-system. + +2. Run Sonar Cube analytics and review results in the online dashboard. Consider all issues and make sure, that no critical issues are flagged, before releasing the software. + +3. After the build-job got executed, the Docker image should be stored at Docker Hub. You can check the website or simply run the container by specifying the tag: docker pull phil21/uni-resolver-web:3.1.0 + +4. Tag the release: + + `git tag v3.1.0.RELEASE` + + `git push origin --tags` + +Afterwards the release will be automatically shown on GitHub under the releases. + diff --git a/docs/dev-system.md b/docs/dev-system.md new file mode 100644 index 000000000..c0944632f --- /dev/null +++ b/docs/dev-system.md @@ -0,0 +1,38 @@ +# Development System of the Universal Resolver + +The dev-system or the sandbox installation, which runns the latest code-base of the Universal Resolver project, is hosted at: + +http://dev.uniresolver.io + +The drivers are exposed by their subdomains (DID method-names). For example: btcr.dev.uniresolver.io +> Note for driver-developers: The subdomains are automatically generated based on the Docker image tag e.g.: driver-did-btcr, which consequently must have the DID-method name as part of the tag-name (pattern: driver-di-). + +DIDs can be resolved by calling the resolver: + +http://dev.uniresolver.io/1.0/identifiers/did:btcr:xz35-jznz-q6mr-7q6 + +or by directly accessing the driver’s endpoint: + +http://btcr.dev.uniresolver.io/1.0/identifiers/did:btcr:xz35-jznz-q6mr-7q6 + + +The software is automatically update on every commit and PR on the master branch. See CI-CD for more details + + +Currently the system is deployed in the AWS cloud by the use of the Elastic Kubernetes Service (EKS). Please be aware that the use of AWS is not mandatory for hosting the resolver. Any environment that supports Docker Compose or Kubernetes will be capable of running an instance of the Universal Resolver. + + +## AWS Architecture + +This picture illustrates the AWS architecture for hosting the Universal resolver as well as the traffic-flow through the system. + +

+ +The entry-point to the system is the public internet facing Application Load Balancer (ALB), that sits at the edge of the AWS cloud and is bound to the DNS name “dev.uniresolver.io”. When resolving DIDs the traffic flows though the ALB to the resolver forwards. Based on the configuration of each DID-method the resolver calls the corresponding DID-driver (typical scenario) or may call another HTTP endpoint (another resolver or directly the DLT if HTTP is supported). In order to gain performance, blockchain nodes may also be added to the deployment, as sketched at Driver C. + +The Kubernetes cluster is spanned across multiple Availability Zones (AZ), which are essential parts for providing fault-tolerance and achieving a high-availability HA of the system. This means that no downtime is to be expected in case of failing parts of the system, as the healthy parts will take over operations reliably. + +If conatiners, like DID-Drivers, are added or removed, the ALB ingress controller https://kubernetes-sigs.github.io/aws-alb-ingress-controller/ takes care of notifying the ALB. Due to this mechanism the ALB stays aware of the system state and is able to keep traffic-routes healthy. +By use of https://github.com/kubernetes-sigs/external-dns the DNS Service Route 53 is updated. Further details regarding the automated system-update are described at CI/CD. + + diff --git a/docs/figures/aws-architecture.png b/docs/figures/aws-architecture.png new file mode 100644 index 0000000000000000000000000000000000000000..b997c5cc2a93bb5e5471996c063769348294dd35 GIT binary patch literal 78188 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 literal 0 HcmV?d00001