Skip to content

Commit cc1df3f

Browse files
committed
docs: more HCC updates from working session
1 parent 6654ea5 commit cc1df3f

File tree

1 file changed

+34
-10
lines changed

1 file changed

+34
-10
lines changed

docs/hcc.md

Lines changed: 34 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
# NOTE: this document is a work in progress and should not be considered authoritative.
2+
13
# Change Control with Embedded Git for Health Connect Cloud
24

35
## Glossary
@@ -32,20 +34,27 @@ A Health Connect Cloud Dev deployment will have at least one Protected Namespace
3234

3335
# Customer Responsibilities
3436

35-
# Example Use Case 1: Inbound HL7 Service
37+
## Example Use Case 1: Inbound HL7 Service
3638
> As a Health Connect Cloud user, I want to add a new inbound HL7 service to receive HL7 messages from a lab.
3739
3840
- Log in
3941
- Go to production configuration page for your User Namespace
4042
- Create an interface branch
41-
- Add the service
42-
- Test the service
43+
- Add and test the service
4344
- Sync: After this operation, the User Namespace has everything from the Protected Namespace in addition to changes made in the interface branch, and all of the modified files have been pushed to GitLab.
4445
- Technical level for the git-savvy: this commits to the interface branch locally, rebases the interface branch on the latest state of the development branch, updates the User Namespace with any changes made as a result, and force pushes the interface branch out to GitLab.
45-
- Click the link to create a merge request
46-
- Have the merge request approved and merged to the development branch
47-
- CI/CD deploys to the Protected Namespace on the Dev deployment OR use Git Pull page
46+
- Click the link to create a merge request targeting the `development` branch
47+
- Have the merge request approved and merged to the `development` branch
48+
- CI/CD deploys to the Protected Namespace on the Dev deployment
4849
- Test in the Protected Namespace on the Dev Deployment
50+
- Create a merge request from your interface branch to the `test` branch
51+
- Have the merge request approved and merged to the `test` branch
52+
- CI/CD deploys to the Protected Namespace on the Test deployment
53+
- Test in the Protected Namespace on the Test deployment
54+
- Create a merge request from your interface branch to the `live` branch
55+
- Have the merge request approved and merged to the `live` branch
56+
- CI/CD deploys to the Protected Namespace on the Prod deployment
57+
- Done!
4958

5059
### Interface Branches
5160

@@ -55,11 +64,11 @@ The first step in making changes in Health Connect Cloud using Embedded Git is m
5564

5665
You will be prompted to enter a name for your new branch (no spaces or special characters), after which your environment will switch to that new branch. All new branches are fresh copies of the development branch. We recommend that you name branches descriptively based on a reference to the issue/bug that you are trying to fix - a GitLab issue number, Jira, ServiceNow ticket reference, etc.
5766

58-
### Making Changes
67+
### Add and Test the Business Service
5968

6069
Now that you are in your new branch (you can see your current branch in the first item in the source control menu), you can start making changes. As you make changes to different business processes, rules, and productions, make sure that all of these changes are saved properly before you continue to sync and merge.
6170

62-
### Syncing and Merge Requests
71+
### Syncing
6372

6473
Once you have made all the changes for the specific feature you are working on, and have tested in your namespace, it will be time to merge all of these changes into the development branch.
6574

@@ -73,10 +82,24 @@ This will bring up the sync interface, where you are able to see all the of the
7382

7483
Use the link in the output of the sync in order to create a merge request in the git remote (don't worry if you close out of the sync tab, you can also navigate to GitLab manually). Here, you should make sure that you are merging your interface branch into the development environment, and notify / add the relevant reviewers. Once this merge request is approved, it will be merged into the development branch, so that all of your changes will now be a part of development.
7584

85+
### Merge Request Creation
86+
87+
### Merge Request Approval
88+
89+
### CI/CD Deployment
90+
91+
### Validate in Protected Namespace
92+
93+
### Repeat in Test and Prod
94+
95+
## Example Use Case 2: You Get Interrupted
96+
7697
### Switching Branches
7798

7899
Suppose you begin working on a larger project in one branch, and then need to shift to something else. The proper approach to this in Embedded Git is to commit your in-progress work on the first interface, and then to switch to a new branch. This branch will be based on the development branch and may be missing components from the first project, but that's OK. You can always switch back to the first interface branch to continue work there.
79100

101+
## Example Use Case 3: Onboarding a New User
102+
80103
### Configuring Git on a New Namespace
81104

82105
When creating a new namespace on the Health Connect instance, you will need to ensure that the Git configuration matches that in other namespaces. The steps to do so are:
@@ -110,10 +133,11 @@ With CI/CD pipelines in place, the most important thing is that there is a branc
110133

111134
This guide provides step-by-step instructions for developers on how to perform code changes and move code from a local repository to a target environment using a Change Control tool based on VSCode and GitLab.
112135

113-
## Persona: Developer
136+
## Fallback Approach: VSCode and a Local Git Repository
114137

115-
> Example Use Case: As a Interface Engineer, I want to create a new Adapter to a Production and configure it with a new DTL class created via VSCode.
138+
> As a Health Connect Cloud user, I want to add a new inbound HL7 service to receive HL7 messages from a lab.
116139
140+
TODO: note about not mixing this approach with Embedded Git
117141

118142
### **(*Optional*) Create an Issue**
119143
- If necessary, create an issue in GitLab to describe the work to be done and document any requirements. This can help track progress and serve as a reference for the changes made.

0 commit comments

Comments
 (0)