Skip to content
This repository was archived by the owner on May 19, 2020. It is now read-only.

Commit a7079a8

Browse files
author
Marco Segreto
authored
Merge pull request #470 from 18F/ms-release-1.1.0
Update version number for new release
2 parents 5af9541 + 9fa2ce9 commit a7079a8

3 files changed

Lines changed: 92 additions & 11 deletions

File tree

RELEASE.md

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
2+
# Releasing the dashboard
3+
4+
## Steps
5+
6+
1. [Update version number](#updating-version-number)
7+
1. [Manual testing](#manual-testing) of the master branch
8+
1. [Tagging](#tagging) the release to deploy
9+
10+
### Updating version number
11+
12+
Numbers are chosen based on whether the code changes will cause a breaking API
13+
change or not. Version numbers do not follow traditional semver, as this
14+
codebase isn't a library that's consumed but a user interface. Instead, breaking
15+
api changes should be a major change while all other changes can be a minor
16+
change. Single bug fixes can be reserved for patch changes.
17+
18+
Once a version number is decided, it must be updated in `package.json` under
19+
the `version` key. This is currently the only place it has to be updated. To
20+
change the version:
21+
22+
1. Change the `version` key in `package.json` to the new version number.
23+
1. Checkout a new branch with the format `release-{num}` where {num} is the new version number.
24+
1. Commit the change with a message about updating for a new release.
25+
1. Push this change up to the remote and create a pull request.
26+
1. Once ready, merge the pull request (this will not trigger a release yet).
27+
28+
### Manual testing
29+
30+
Currently, the site does not have visual regression testing so must be manually
31+
tested for breaking visual changes. Here is a simple script to assist in manual
32+
testing. Generally, it's best to look through all the pages and check if anything
33+
looks off. Testing shoudl generally be done on the master environment,
34+
dashboard-master.cloud.gov, when all the necessary code is on the master branch
35+
and has been deployed. To check that the master branch has been deployed, check
36+
travis CI.
37+
38+
#### Script
39+
40+
Actions in the script should be done under the `cf-deck-testing` organization
41+
and the `testSpace01` space.
42+
43+
1. Go to `/` and ensure everything looks OK.
44+
1. Click on an organization on the right hand side nav.
45+
- Ensure that the correct organization get's highlighted in the sidenav.
46+
- Ensure the menu correctly opens.
47+
1. Click on `Marketplace` in the sidenav and ensure the page appears and looks OK.
48+
1. Click `Create service instance` on any of the rds service plans.
49+
- Ensure you are easily able to see the `Create service instance` form.
50+
- Ensure the `Create service instance` form looks OK.
51+
1. Choose a memorable name for the service instance and type it into the first textbox.
52+
1. Add the service instance under a the `testSpace01` space by selecting it from the dropdown.
53+
1. Click the `Cancel` button and ensure the form correctly disappears.
54+
1. Repeat the last few steps to open the `Create service instance` form again filled out.
55+
1. Click the `Create service instance` button and ensure the form disappears.
56+
1. Click on the `spaces` link and ensure the all spaces page appears and looks OK.
57+
1. Click on a space on the sidnav in the list of spaces.
58+
- Ensure the space get's correctly highlighted in the sidenav.
59+
- Ensure the specific space page appears and looks OK.
60+
1. Click on the `Service instances` link in the subnav.
61+
- Ensure the page appears and looks OK.
62+
- Ensure that your test service instance you created is in the list of instances.
63+
1. Click the `Delete instance` button for the instance you created.
64+
- Ensure a delete confirmation form appears.
65+
1. Click the `Cancel` button on the delete confirmation form and ensure the form disappears.
66+
1. Click the `Delete instance` button for the instance you created again.
67+
1. Click 'Confirm delete' and ensure the form and the instance disappear after a few seconds.
68+
1. Click on `User management` in the subnav and ensure the page appears and looks OK.
69+
1. Attempt to click on the role checkboxes for a user. (If it's grayed out, you do not have permission to edit it, which is OK)
70+
- Ensure the checkbox becomes unchecked after a second of clicking on it.
71+
1. Click on the same checkbox again to keep the permission the same
72+
- Ensure the checkbox becomes unchecked after a second of clicking on it.
73+
1. Click on the 'All organization users` link in the subnav.
74+
1 Repeat steps to check a user permission.
75+
1. Techinically, we shoudl test removing a user from an org here, but will not because theres no easy way to add them back.
76+
1. Click on the `Apps` link in the subnav
77+
1. Click on `testapp01` or any app available and ensure the page appears and looks OK.
78+
1. Click on the `Overview` link in the sidenav and ensure the homepage appears.
79+
80+
## Tagging
81+
82+
Once the site looks OK and ready to deploy, tagging a commit in git will trigger
83+
the deploy process to production, dashboard.cloud.gov.
84+
85+
On the master branch:
86+
87+
1. Ensure you have the most up to date code by pulling or rebasing.
88+
1. Tag the commit by running `git tag -a {num}` where {num} is the new version number
89+
1. Push the tag up to the remote by running `git push origin --tags`
90+
91+
This should start the release process which can be monitored in travis CI.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "cloudgov-dashboard",
3-
"version": "1.0.0",
3+
"version": "1.1.0",
44
"engines": {
55
"node": "6.x.x",
66
"npm": "3.x.x"

static_src/test/unit/util/uaa_api.spec.js

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -67,15 +67,5 @@ describe('uaaApi', function() {
6767
done();
6868
});
6969
});
70-
71-
it('should call a fetch error on failure', function() {
72-
var spy = fetchErrorSetup();
73-
74-
uaaApi.fetchUserInfo().then(() => {
75-
expect(spy).toHaveBeenCalledOnce();
76-
expect(spy).toHaveBeenCalledWith(errorFetchRes);
77-
done();
78-
});
79-
});
8070
});
8171
});

0 commit comments

Comments
 (0)