Commit Graph

215 Commits

Author SHA1 Message Date
Aaron Ogata b3e7d11c77 move failure reports
refs DE-348

[canvas-builds-refspec=ea37440eb5fb011f138b2e3a8239fbd70b56a8ac]

Test Plan:
1. Ensure failure report is written when tests fail
2. Ensure failuie report links work

Change-Id: Idd84536fb203fb1d525f7e566c3b55b60a110e2d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250992
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
2020-11-03 18:30:44 +00:00
Aaron Ogata 7719a55ce0 run snyk in parallel with other jobs
refs DE-350

[change-merged]
[build-registry-path=jenkins/canvas-lms/snyk-parallel]

Change-Id: Icff28955b7e5ba27cf8ac69ae2cb3e690d7c2597
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250673
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
Reviewed-by: Andrea Cirulli <andrea.cirulli@instructure.com>
2020-11-03 14:02:54 +00:00
James Butters 986c935bdf checkout Jenkinsfile from master
These changes need to be accompanied by changes
to Jenkins config:
  - main-canvas-postgres-12-ruby-2.6 and
  main-canvas-postgres-12-ruby-2.6-postmerge, SCM
  refspec changed to master
  - sub-builds scm changed from canvas-lms-refspec
  to JENKINSFILE_REFSPEC defaulting to master
  - add Jenkins parameter JENKINSFILE_REFSPEC to sub-builds
  - add new Jenkins build for main Jenkinsfile changes
  - main build don't trigger on Jenkinsfile changes using
    forbidden path.

Testing once merged:
- verify builds without Jenkinfile changes pull the master
  version of Jenkinsfile
  - verify sub-builds as well
- verify gerrit with Jenkinsfile changes triggers new build
  - verify sub-builds get Jenkinsfiles from gerrit not master
  - test a combination of Jenkinsfiles, not just the main one
  - verify main build is not triggered
- run a plugin build without canvas-lms-refspec
- run a plugin build with canvas-lms-refspec

Change-Id: Ic6be8b446f80d57f7b0f25c77e6cffb959e03236
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/251634
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: James Butters <jbutters@instructure.com>
Product-Review: James Butters <jbutters@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
Reviewed-by: Ryan Norton <rnorton@instructure.com>
2020-11-03 03:08:08 +00:00
Aaron Ogata e9801f5c60 convert failureReport usage to new API
refs DE-338

[canvas-builds-refspec=932b8df00a72791bc5075fb360e9d2e2a27a80d9]

Change-Id: Ida9bd1a9fe757040a3c285b79bc2db33a0bf96dd
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/251626
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
Reviewed-by: Andrea Cirulli <andrea.cirulli@instructure.com>
2020-11-02 21:15:28 +00:00
James Butters 3c8b9ae648 run linters for plugin builds
flag = none

Test:
- Jenkins passes
- plugin build with this gerrit passes

Change-Id: I67838ae08cb2443c3c41fdcce157a83027e43243
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/251652
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: James Butters <jbutters@instructure.com>
Product-Review: James Butters <jbutters@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
Reviewed-by: Kyle Rosenbaum <krosenbaum@instructure.com>
Reviewed-by: Andrea Cirulli <andrea.cirulli@instructure.com>
2020-11-02 19:36:15 +00:00
Aaron Ogata 2dcc3df114 introduce canvas-builds-refspec commit flag
refs DE-349

[canvas-builds-refspec=f04c7902ccabadb61cee13fa93f09b1184925b84]

Test Plan:
1. Build pulls master when flag does not exist
2. Build pulls specified commit when flag exists
3. Build pulls master for post-merge when flag exists

Change-Id: I365efd3a305d08f7a3df76fd44799756104b4c1f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/251635
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-11-02 19:33:54 +00:00
Aaron Ogata e4b6d24cca Revert "run snyk in parallel with other jobs"
This reverts commit a7e0e02677.

Reason for revert: broke Jenkins

Change-Id: I13f3026dcae098670e58f950fbe074b5da1abda4
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250666
Reviewed-by: Kyle Rosenbaum <krosenbaum@instructure.com>
Tested-by: Aaron Ogata <aogata@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-23 21:46:39 +00:00
James Butters 7c27182cfa enable rails 6 for testing
adding variables to use rails 6 in new test build.

Test Plan:
- Jenkins build pass
  - rails 5 is installed and used
- Run Main-from-plugin
  - rails 5 is installed and used
- Run new rails6 build
  - rails 6 is installed and used
- Run new rails6 plugin build
  - rails 6 is installed and used

Change-Id: Ib4441f2eb6fb8946089c17bf81ec16bcb7b42020
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250840
QA-Review: James Butters <jbutters@instructure.com>
Reviewed-by: Andrea Cirulli <andrea.cirulli@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
Product-Review: James Butters <jbutters@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2020-10-23 14:49:00 +00:00
Aaron Ogata a7e0e02677 run snyk in parallel with other jobs
[change-merged]
[build-registry-path=jenkins/canvas-lms/snyk-parallel]

Change-Id: I4930142a13e211de4f6dbc1ec309a148c241a1ca
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250314
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
Reviewed-by: Ryan Norton <rnorton@instructure.com>
Reviewed-by: Andrea Cirulli <andrea.cirulli@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-23 14:21:39 +00:00
Aaron Ogata df07c10075 only build api docs for post-merge build
refs DE-324

Some tests require lib/api_scope_mapper.rb to be generated by the doc:api task, and this is a slow operation that all builds run before starting tests. Generated changes to this file are relatively rare, so let’s require developers to commit their changes to it to save time on all builds. In addition, install a linter to verify that matching changes are pushed.

[change-merged]
[build-registry-path=jenkins/canvas-lms/evaluate-webpack-docs]

Change-Id: Iaa6ebb1ba8cbb008191f6bee14b3bf2f413168e7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250801
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
Reviewed-by: Ryan Norton <rnorton@instructure.com>
2020-10-22 18:24:05 +00:00
Aaron Ogata fb473d4c70 fix main-from-plugin build initial checkout
refs DE-339

Change-Id: Ic023a9dfb389a8eac2b39f5fef7b97e849580803
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250827
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-22 15:31:06 +00:00
Aaron Ogata b061e8518b improve checkout performance
refs DE-339

Change-Id: Ib921d5f54d0a582a2fe7cf550de4c71d4bcd46a0
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250693
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
2020-10-22 13:38:06 +00:00
Aaron Ogata 7036df59ac limit fetch to top n commits when rebasing
Test Plan:
1. Rebase works when commit is within pulled range
2. Rebase errors when commit is out of range

Change-Id: I16af17296bcfcf59ca008b7d6dd44f961b75afcb
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250462
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-21 13:39:07 +00:00
Andrea Cirulli d743b37439 move migrations.groovy into canvas-builds
move file migrations.groovy from canvas-lms to
canvas-builds

refs DE-328
flag = none

test plan:
- Ensure build passes
- Ensure migration cache is used when there is no migration
- Ensure the cache is not used with skip cache flag
- Ensure the cache is not used if we force a db
migration

Change-Id: I58671667e2e351a65439bbd55ae884118cd30575
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250531
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Andrea Cirulli <andrea.cirulli@instructure.com>
Reviewed-by: Kyle Rosenbaum <krosenbaum@instructure.com>
Product-Review: Andrea Cirulli <andrea.cirulli@instructure.com>
2020-10-20 21:01:22 +00:00
Aaron Ogata a655d9d29d rebuild docker image cache for all change-merged jobs
Change-Id: I7b75e6c3f02773c3b1c8a6ac3f7af38790031a2a
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250506
Reviewed-by: James Butters <jbutters@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2020-10-20 16:16:41 +00:00
Aaron Ogata 5b639153cf upload post-merge cache image immediately
refs DE-326

[change-merged]
[build-registry-path=jenkins/canvas-lms/de-326]

Change-Id: Ia7715d523833f2906e8731f05aeaa63f120e3abb
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250451
Reviewed-by: James Butters <jbutters@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-20 15:38:34 +00:00
Aaron Ogata d625904367 Revert "fetch only top-level commit when rebasing"
This reverts commit 75e3ff79f4.

Reason for revert: broke new nodes

Change-Id: If66279ca8c61eefb0b43d6d2e54ad89d994d43bf
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/248619
Tested-by: Aaron Ogata <aogata@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-19 19:57:22 +00:00
Andrea Cirulli 07a985e74b move failure messages report functions to canvas-builds
migrate functions related to failure message report
to canvas-builds shared libray

refs DE-323
flag = none

test plan:
- Ensure build passes
- Ensure canvas-lms PS with spec failures create
the failure-messages file and archive it into the
artifacts
- Ensure canvas-lms PS with spec failures send
failure links as gerrit comment on the PS

Change-Id: I1c9db466787f6761e7a7e0ae1d00d7a8422c4ccf
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250243
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Andrea Cirulli <andrea.cirulli@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
Product-Review: Andrea Cirulli <andrea.cirulli@instructure.com>
2020-10-19 19:38:32 +00:00
Aaron Ogata 75e3ff79f4 fetch only top-level commit when rebasing
Change-Id: Icd184be41b9bdd687ba18dab08780e61a0641d08
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250417
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Andrea Cirulli <andrea.cirulli@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-19 19:32:18 +00:00
Aaron Ogata dafd31ce44 clean workspace from previous runs
Change-Id: I0daa0b3d192d92e62dd5b3f56a9826997799e819
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250423
Reviewed-by: James Butters <jbutters@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-19 18:05:23 +00:00
Aaron Ogata df951e5689 require rebasing of Jenkinsfile when it has updated
Change-Id: I006b7ff25a296fa5d49ecd42ad04e2a084fb15ce
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250315
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Andrea Cirulli <andrea.cirulli@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-19 14:32:15 +00:00
Andrea Cirulli d7723c2a4f move snyk functions into canvas-builds
move the snyk function into canvas-builds and
use the snykSecurity plugin instead of the
custom code

refs DE-316
flag=none

test plan:
- Ensure build passes
- Ensure build passes with change merged
flag
- Ensure snyk reports are archived correctly

Change-Id: I48087091aaccbc12441e25be3f06285bd7f99646
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/249712
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Andrea Cirulli <andrea.cirulli@instructure.com>
Reviewed-by: Kyle Rosenbaum <krosenbaum@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
Product-Review: Andrea Cirulli <andrea.cirulli@instructure.com>
2020-10-14 22:47:24 +00:00
Aaron Ogata c4b796b4fa improve debugging messages for docker cache
refs DE-212

[change-merged]
[build-registry-path=jenkins/canvas-lms/de-212-try-4]

Change-Id: I0c39313ef6f7e2d846edfe332d5643b7f22233b9
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250120
Reviewed-by: Andrea Cirulli <andrea.cirulli@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-14 18:09:24 +00:00
Aaron Ogata 4273a0bc67 report cache upload / usage to slack
refs DE-212

[build-registry-path=jenkins/canvas-lms/de-212-try-2]
[change-merged]
[skip-rebase]

Change-Id: Ie04480fdfb5a740f22188dad908673c52e1b7f1b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/250007
Reviewed-by: James Butters <jbutters@instructure.com>
Reviewed-by: Andrea Cirulli <andrea.cirulli@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-13 19:28:30 +00:00
James Butters 90fc771b66 display leftover files for debugging pollution
flag = none

Change-Id: Ib237f71599955e81cd0217fac6e316b156203ea7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/249972
Reviewed-by: Aaron Ogata <aogata@instructure.com>
Reviewed-by: Andrea Cirulli <andrea.cirulli@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: James Butters <jbutters@instructure.com>
Product-Review: James Butters <jbutters@instructure.com>
2020-10-13 14:32:51 +00:00
Aaron Ogata 7beea9fcf6 reduce file dependencies for webpack build
refs DE-212

If a user isn’t changing any front-end related files, we can get a significant time savings by not re-building webpack. In order to do this, we have to remove the multi-layer dependencies image due to poor docker support for multi-layer caching. The dependencies build is an artifact of the ruby-only image that no longer exists, so no behavioural changes are expected.

Test Plan:
1. Ensure that the post-merge / pre-merge caches are used on post-merge build.
2. Ensure that the pre-merge cache is used on a pre-merge build.
3. Ensure that both above work on specifically the same / different nodes.

[change-merged]
[build-registry-path=jenkins/canvas-lms/de-212]
[skip-rebase]

Change-Id: I659db8f201bfe5e4fa6d20d802a639f5a55685df
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/245976
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-13 13:46:55 +00:00
Aaron Ogata 241605abdb report junit results immediately
refs DE-317

Change-Id: If96c15589e865bed01859752d4b1adfcd4cedf94
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/248437
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-12 18:05:37 +00:00
Andrea Cirulli 33b328e305 move successes.groovy into canvas-builds
delete the local successes.groovy files and use the
successes library migrated to canvas-builds

refs DE-53
flag=none

test plan:
- Ensure build passes using the successes library
migrated to canvas-builds

Change-Id: I8cea11bb531012eeec2e46cd574566218fff2733
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/249202
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Andrea Cirulli <andrea.cirulli@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
Product-Review: Andrea Cirulli <andrea.cirulli@instructure.com>
2020-10-08 21:59:50 +00:00
James Butters f711446340 post-merge plugins use default canvas_lms_refspec
Post-merge plugin builds should run against canvas master.

flag = none

Test Plan:
-run plugin build with custom canvas-lms-refspec, view logs
  to see that it was honored.
-run change-merged plugin build, verify the default master
  canvas-lms-refspec was used rather than the custom refspec.

Change-Id: Ia96628543e2e0d8a9f16225f787e59e0be481094
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/249597
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
Product-Review: James Butters <jbutters@instructure.com>
QA-Review: James Butters <jbutters@instructure.com>
2020-10-08 19:54:12 +00:00
Aaron Ogata 9a62f129bd don’t skip stage if previously successful
refs DE-23

Change-Id: I1538309f0c8d5b25f1b42ae07567acd1b8f26f85
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/249632
Reviewed-by: James Butters <jbutters@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2020-10-08 18:17:44 +00:00
Aaron Ogata 0fc27c1b85 convert stage => timedStage
refs DE-23

Change-Id: Ie3defc55b00761b64f336c72a058403d2c25bece
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/249619
Reviewed-by: Andrea Cirulli <andrea.cirulli@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-08 17:17:59 +00:00
Aaron Ogata 1bfb887395 cache migrations by md5sum
refs DE-23

[change-merged]
[build-registry-path=jenkins/canvas-lms/de-23-test]

flag = none

Test Plan:
1. Jenkins pre-merge build with a new migration re-builds migrations
2. Jenkins pre-merge build with migrations cached does not re-build
3. Jenkins post-merge build with migrations cached re-builds migrations
4. skip-cache directive does not use the cached migration
5. Jenkins non-main builds works as expected
6. Jenkins FSC works as expected

Change-Id: I3221400a15220884740ad5136de7185a88ae2b39
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/241013
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Reviewed-by: Ryan Norton <rnorton@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-08 16:39:18 +00:00
Aaron Ogata 718eb4a736 introduce timedStage functionality
refs DE-136, DE-189

Change-Id: I6fde9a109b160b36ee466d83c5244dec28aea771
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/249494
Reviewed-by: James Butters <jbutters@instructure.com>
Reviewed-by: Andrea Cirulli <andrea.cirulli@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-08 15:25:31 +00:00
Aaron Ogata 35e058861e reduce risk of merge conflicts with migration caching
refs DE-23

Change-Id: I7829d5655f0fc52c1c071dad44f0f098972b90bb
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/249487
Reviewed-by: James Butters <jbutters@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-07 14:57:32 +00:00
Aaron Ogata 2d59146f74 allow canvas migrations job to accept custom registry path
refs DE-310

Test Plan
1. CDC Schema Check works with default registry path
2. CDC Schema Check works with custom registry path

Change-Id: I5ae395bef350c0d99def8e072500a4ab55b4f620
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/249399
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-10-06 19:41:41 +00:00
Andrea Cirulli c038f1f0d9 fix patchset info null in cdc-event-transformer
refs DE-305
flag = none

test plan:
- Ensure  build passes forcing the cdc build to be
executed
- Ensure build passes

Change-Id: Ifb3e6b26c384df26214217d4314d8756edba00d3
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/249101
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Andrea Cirulli <andrea.cirulli@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
Product-Review: James Butters <jbutters@instructure.com>
2020-10-01 20:54:32 +00:00
Andrea Cirulli 6544c09c1b move merge_tag and publishable_tag to canvas_builds
create functions for MERGE_TAG and EXTERNAL_TAG vars

refs DE-303
flag = none

test plan:
- Ensure canvas-lms build passess using canvas_builds version
that implements the new functions

Change-Id: I81f5069721a9316c90d42ac77eaef076a0ef494c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/248946
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
Product-Review: James Butters <jbutters@instructure.com>
QA-Review: Andrea Cirulli <andrea.cirulli@instructure.com>
2020-09-30 19:37:29 +00:00
Andrea Cirulli 7e03f6cfb4 move dependencies_ hardcoded vars into canvas-builds
refs DE-296
flag = none

test plan:
- Ensure canvas-lms build passes using the new version of canvas-builds

Change-Id: I188d273fabfd29057dcff53f1bbb3c7e93e093eb
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/248851
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
Product-Review: James Butters <jbutters@instructure.com>
QA-Review: Andrea Cirulli <andrea.cirulli@instructure.com>
2020-09-30 13:56:54 +00:00
Andrea Cirulli 4c7ab8e6e8 move publishable_tag hardcoded env var into canvas_build
Move the hardcoded var PUBLISHABLE_TAG used from Jenkinsfiles in
canvas-lms to be configurable into canvas-builds

refs DE-282
flag=none

test plan:
- Ensure canvas-lms build passes using the new function to get the
PUBLISHABLE_TAG

Change-Id: I4cbb7662282a7754ecb2c994abc1cb0c372cc70d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/248584
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Andrea Cirulli <andrea.cirulli@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-09-28 18:15:14 +00:00
Aaron Ogata 269d3e23da refactor FORCE_FAILURE logic for clarity
refs DE-285

Test Plan:
1. FSC works for main build
2. FSC works for plugin build
3. FSC works for force-failure path

Change-Id: If1c632fa047b6a7776f458baf5aa3926e62c5070
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/248421
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Ryan Norton <rnorton@instructure.com>
2020-09-24 19:58:37 +00:00
Aaron Ogata ca4ee79671 reduce over politeness in failure message
Change-Id: I6e06efb114a37b1cd9e390267396eb8328a2d8d8
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/247965
Reviewed-by: Ryan Norton <rnorton@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-09-17 21:40:18 +00:00
Aaron Ogata 2ca3923dcc remove commented out code
Change-Id: I7e70b4e84ca542d9318f872b7c46664ee5ede011
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/247816
Reviewed-by: Alex Slaughter <aslaughter@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-09-16 01:05:23 +00:00
James Butters 1797486a72 only run docker dev build for canvas-lms repo
Change-Id: Ic214a20476978ccdcd76bba475f8903068faf4e5
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/247810
Reviewed-by: Andrea Cirulli <andrea.cirulli@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: James Butters <jbutters@instructure.com>
Product-Review: James Butters <jbutters@instructure.com>
2020-09-15 23:52:07 +00:00
James Butters 5deafbc281 add docker-smoke build
Adding a new build for local docker setup, add new Jenkinsfile
for that build that replicates the local setup for docker dev.

closes: DE-207
flag = none

Test Plan:
- Run new Jenkinsfile in proof-of-concept build
- Current builds all pass, no effect on them
- New build passes as sub-build of main build
- New build triggered with changes to relelvant files

Change-Id: I1a2562425a33caee6eed4c1e2899c364dd181711
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/245728
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
QA-Review: Andrea Cirulli <andrea.cirulli@instructure.com>
Product-Review: James Butters <jbutters@instructure.com>
2020-09-14 23:12:35 +00:00
Aaron Ogata ab760c8b14 update failure message to be more descriptive
refs DE-238

[change-merged]
[build-registry-path=jenkins/canvas-lms/de-238]

Change-Id: I404c20d1d7781377b313302baf54dcea33984457
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/247151
Reviewed-by: James Butters <jbutters@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-09-14 20:49:26 +00:00
Aaron Ogata 8317c511f2 automatically re-trigger failed post-merge build
refs DE-237

Test Plan:
1. Successful normal build does not automatically retrigger.
2. Failed normal build does not automatically retrigger.
3. Successful post-merge build does not automatically retrigger
4. Failed post-merge build automatically retriggers only once (with option enabled).
5. Failed post-merge build does not automatically retrigger with option disabled.

Change-Id: I389f78ed796935866476a00e2b093a46a76d1dc5
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/246897
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
Reviewed-by: Ryan Norton <rnorton@instructure.com>
2020-09-14 20:14:24 +00:00
Alex Slaughter b6df87f610 Tag Jenkins Canvas Docker Image with SHA
[change-merged]
[build-registry-path=jenkins/canvas-lms/de-247]

Fixes: DE-247

Test plan:
 - Spec Pass
 - Verify git_rev is the correct sha
 - Verify all tags upload
 - Verify the images uploaded are correct

flag=none

Change-Id: Icb159a39d90e6061e91742d4daff4a854d804cbd
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/247281
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Reviewed-by: Ryan Norton <rnorton@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
Product-Review: Alex Slaughter <aslaughter@instructure.com>
2020-09-10 01:44:42 +00:00
James Butters d77cc24afd correctly fetch and checkout if rebase fails
flag = none

Test Plan:
-Jenkins passes

Change-Id: I2d400ee9c1f69597a0cbdd67614d06dc452b8f65
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/247170
QA-Review: James Butters <jbutters@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: James Butters <jbutters@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
2020-09-09 12:55:18 +00:00
Aaron Ogata 28e06bca5a fix wording of re-trigger message
refs DE-238

[change-merged]
[build-registry-path=jenkins/canvas-lms/de-238]

Change-Id: I8ef22417e2ba4ca14d0ff74936853c7d4746f075
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/246895
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-09-08 17:54:11 +00:00
Aaron Ogata e2048b380f report successful post-merge re-triggers to slack
refs DE-236

[change-merged]
[build-registry-path=jenkins/canvas-lms/de-236]

Change-Id: Iea3399f9c57c5af8c185423f224f038164a603bc
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/246773
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: James Butters <jbutters@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2020-09-03 14:08:45 +00:00