From c7c85417442b3620b8a9147b503a5d5a6421c4f7 Mon Sep 17 00:00:00 2001 From: donal <donalspring@gmail.com> Date: Thu, 26 Apr 2018 18:03:57 +0200 Subject: [PATCH] Merge changes from testing --- exercises/5-non-functionals-strike-back/README.md | 9 ++++++--- exercises/images/exercise5/jenkins-parallel.png | 0 exercises/2-attack-of-the-pipelines/README.md | 6 +++++- exercises/3-revenge-of-the-automated-testing/README.md | 2 +- exercises/4-an-enslaved-hope/README.md | 8 ++++---- 5 files changed, 16 insertions(+), 9 deletions(-) diff --git a/exercises/2-attack-of-the-pipelines/README.md b/exercises/2-attack-of-the-pipelines/README.md index f076c14..5b342cb 100644 --- a/exercises/2-attack-of-the-pipelines/README.md +++ b/exercises/2-attack-of-the-pipelines/README.md @@ -540,11 +540,15 @@ * set the Name to `BUILD_TAG`. This will be available to the job as an Enviroment Variable. * You can set `dev-todolist-fe-build.` as the default value for ease when triggering manually. * The description is not required but a handy one for reference would be `${JOB_NAME}.${BUILD_NUMBER} of previous build eg dev-todolist-fe-build.1232` +<p class="tip"> + NOTE - Don't forget to include the `.` after `dev-todolist-fe-build` in the Default Value box. +</p> + ![param-trigger-bake](../images/exercise2/param-trigger-bake.png) 5. This time set the `Restrict where this project can be run` label to `master`. <p class="tip"> - `Master` is the default node that jobs run on. We don't want jenkins to execute the *bake* on any other nodes if the `master` is busy so it is always safer to specify it here. + NOTE - `Master` is the default node that jobs run on. We don't want jenkins to execute the *bake* on any other nodes if the `master` is busy so it is always safer to specify it here. </p> 5. There is no Git or SCM needed for this job so move down to the Build Environment and tick `Delete workspace before build starts` diff --git a/exercises/3-revenge-of-the-automated-testing/README.md b/exercises/3-revenge-of-the-automated-testing/README.md index 7461c63..f83834b 100644 --- a/exercises/3-revenge-of-the-automated-testing/README.md +++ b/exercises/3-revenge-of-the-automated-testing/README.md @@ -119,7 +119,7 @@ Click on `dev-todolist-fe-build` and then click the `configure` button on the left-hand side. ![jenkins-configure-job](../images/exercise3/jenkins-configure-job.png) -2. Scroll to the `Build` part of the configuration page and add `npm run test` below `npm install`. Click `save` or `apply` at the bottom to save the changes. +2. Scroll to the `Build` part of the configuration page and add `npm run test` below `npm install`. ![jenkins-build-step](../images/exercise3/jenkins-build-step.png) 2. Scroll to the `Post-build Actions` section and click `Add post-build action`. Select `Publish xUnit test result report` (Jenkins might place this at the top of the `Post-build Actions` list). diff --git a/exercises/4-an-enslaved-hope/README.md b/exercises/4-an-enslaved-hope/README.md index b5a5533..0d009cb 100644 --- a/exercises/4-an-enslaved-hope/README.md +++ b/exercises/4-an-enslaved-hope/README.md @@ -93,13 +93,13 @@ 2. On the job's configure page; set the Branch Sources to `git` ![multibranch-select-git](../images/exercise4/multibranch-select-git.png) -2. Fill in the Git settings with your `todolist-api` GitLab url and set the credentials as you've done before. +2. Fill in the Git settings with your `todolist-api` GitLab url and set the credentials as you've done before. `https://gitlab.apps.<SOMEDOMAIN>.com/<YOUR_NAME>/todolist-api.git` ![multibranch-git](../images/exercise4/multibranch-git.png) -2. Set the `Scan Multibranch Pipeline Triggers` to be periodical and the internal to 1 minute. This will poll the gitlab instance for new branches or change sets to build. +2. Set the `Scan Multibranch Pipeline Triggers` to be periodic and the interval to 1 minute. This will poll the gitlab instance for new branches or change sets to build. ![multibranch-scan-time](../images/exercise4/multibranch-scan-time.png) -2. Save the Job configuration to run the intial scan. The log will show scans for `master` and `develop` branch which have no `Jenkinsfile` so are skipped. The resulting view will show the `feature/jenkisifle` job corresponding the only branch that currently has one. The build should run automatically. +2. Save the Job configuration to run the intial scan. The log will show scans for `master` and `develop` branch which have no `Jenkinsfile` so are skipped. The resulting view will show the `feature/jenkinsfile` job corresponding the only branch that currently has one. The build should run automatically. ![todolist-api-multi](../images/exercise4/todolist-api-multi.png) 2. The pipeline file is setup to only run `bake` & `deploy` stages when on `master` or `develop` branch. This is to provide us with very fast feedback for team members working on feature or bug fix branches. Each time someone commits or creates a new branch a basic build with testing occurs to give very rapid feedback to the team. Let's now update our `master` and `develop` branches to include the Jenkinsfile and delete the feature branch. @@ -293,7 +293,7 @@ - arachni ``` -3. Update the params files `SOURCE_REPOSITORY_URL` to point to your gitlab's hosted version of the `enablement-ci-cd` repo. +3. Update the `jenkins-slave-arachni` files `SOURCE_REPOSITORY_URL` to point to your gitlab's hosted version of the `enablement-ci-cd` repo. ``` SOURCE_REPOSITORY_URL=https://gitlab.apps.lader.rht-labs.com/<GIT_USERNAME>/enablement-ci-cd.git SOURCE_CONTEXT_DIR=docker/jenkins-slave-arachni diff --git a/exercises/5-non-functionals-strike-back/README.md b/exercises/5-non-functionals-strike-back/README.md index bf36c9e..27af862 100644 --- a/exercises/5-non-functionals-strike-back/README.md +++ b/exercises/5-non-functionals-strike-back/README.md @@ -206,7 +206,7 @@ } ``` -3. To get the linting working; we will add a new step to our `stage("node-build"){ }` section to lint the Javascript code. After the `npm install`; add a command to run the linting. +3. To get the linting working; we will add a new step to our `stage("node-build"){ }` section to lint the Javascript code. Continuing in the `Jenkinsfile`, After the `npm install`; add a command to run the linting. ```groovy echo '### Install deps ###' sh 'npm install' @@ -225,6 +225,9 @@ ![linting-issue](../images/exercise5/linting-issue.png) 3. To view the coverage graph; go to the job's build page and open the `Code Coverage` report from the nav bar on the side. +<p class="tip"> +NOTE - Sometimes this won't display on the `yourjenkins.com/job/todolist-fe/job/branch/` sidebar, click on an individual build in the build history and it should appear on the side navbar. +</p> ![report-location](../images/exercise5/report-location.png) 3. Open the report to drill down into detail of where testing coverage could be improved! @@ -254,7 +257,7 @@ 4. Set the `Color ANSI Console Output` on the Build Environment section. -4. Create a step to execute shell and add the following to it, replacing `<YOUR_NAME>` and `somedomain` as expected. We will just test the `create` and `show` API for the moment. We are grabbing the response code of the perf-test to keep Jenkins running both shells steps and then exiting with whichever fails: +4. Click `add build step` and select `execute shell` and add the following to it, replacing `<YOUR_NAME>` and `somedomain` as expected. We will just test the `create` and `show` API for the moment. We are grabbing the response code of the perf-test to keep Jenkins running both shells steps and then exiting with whichever fails: ```bash export E2E_TEST_ROUTE=todolist-api-<YOUR_NAME>-dev.apps.somedomain.com npm install @@ -272,7 +275,7 @@ 4. On the new dialog, name the Plot group eg `benchmark-tests` and add `create��-api` as the Plot title. Set the `Number of Builds to Include` to a large number like `100`. Set the Data Series file to be `reports/server/perf/create-perf-score.csv` and mark the `Load data from CSV fiel` checkbox. Apply those changes ![jenkins-plot](../images/exercise5/jenkins-plot.png) -4. Hit `Add Plot` to add another. Set Plot group to `benchmark-tests` again but this time setting the Plot title to `show��-api`. Set the Data Series file to be `reports/server/perf/show-perf-score.csv` and mark the `Load data from CSV checkbox`. Save those changes and run the job (Job could take a while to execute!). +4. Hit `Add Plot` to add another. Set Plot group to `benchmark-tests` again but this time setting the Plot title to `show��-api`. Set the Data Series file to be `reports/server/perf/show-perf-score.csv` and mark the `Load data from CSV` radio button. Save those changes and run the job (Job could take a while to execute!). 4. Run it a few times to start to generate the data points on the plot. The `bench-tests` plot is available on the job's homepage ![result-plot](../images/exercise5/result-plot.png) diff --git a/exercises/images/exercise5/jenkins-parallel.png b/exercises/images/exercise5/jenkins-parallel.png new file mode 100644 index 0000000..89206f4 --- /dev/null +++ b/exercises/images/exercise5/jenkins-parallel.png Binary files differ -- Gitblit v1.9.3