-
Notifications
You must be signed in to change notification settings - Fork 105
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adds RELEASES.md file with checklist before doing a release.
- Loading branch information
Showing
4 changed files
with
41 additions
and
12 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -52,5 +52,6 @@ docs/.sass-cache/ | |
|
||
client/upload/ | ||
|
||
migration-*.sql | ||
yarn-error.log | ||
*.log |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
RELEASES | ||
-------- | ||
|
||
Releases are partially automated in BHIMA. This document is a checklist of things that need to be done | ||
before a release and the steps to creating a new release. | ||
|
||
1. Make a new branch called `release-next` that is based on `upstream/master` to do your release on. If one exists on upstream, remove it first. | ||
2. Run `yarn` to ensure you have the latest dependencies. | ||
3. (Optional, best practice) Test the latest migration script on a production database. (*) | ||
4. (Optional, best practice) Build the application in production mode with `NODE_ENV=production yarn build`. | ||
5. Determine the version number for the next version. (v1.X.Y) | ||
6. Create a new folder in the `server/models/migrations/` directory to hold the migration file with the format `v1.A.B-v1.X.Y` where `1.A.B` is the current version and `v1.X.Y` is the next version. | ||
7. Move the `server/models/migrations/next/migrate.sql` file to the directory created in the above step. | ||
8. Create a blank `migrate.sql` file in `server/models/migrations/next/`. | ||
9. Run `yarn release` and follow the options. | ||
|
||
|
||
(*) Optional, Best Practice: Test the latest database changes on a production database. | ||
|
||
1. Change your `.env` so the `$DB_NAME` variable is the correct one for a production database. | ||
2. Create your database migration script by running `yarn migrate`. This will create a file `migration-$DB_NAME.sql`. | ||
3. Catenate the latest release file into the output `cat server/models/migrations/next/migrate.sql >> migration-$DB_NAME.sql`. | ||
4. Build the migration script targetting your database. `mysql $DB_NAME < migration-$DB_NAME.sql` | ||
5. If no errors occur, remove the file `migration-$DB_NAME.sql` to prevent it from getting checked into SQL. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,5 @@ | ||
/* migrate v1.18.* to v1.19.0 */ | ||
|
||
/** | ||
* @author: mbayopanda | ||
* @date: 2021-03-5 | ||
|