17601: fix hardcoded cluster name in example
[arvados-formula.git] / .travis.yml
index da56128b0a69942ba1565ff93264834937ea22e4..8a44d3f9ae26934f628b27ef5b0d76f98d8e49d0 100644 (file)
@@ -1,6 +1,15 @@
 # -*- coding: utf-8 -*-
 # vim: ft=yaml
 ---
+################################################################################
+# NOTE: This file is UNMAINTAINED; it is provided for references purposes only.
+#       No guarantees are tendered that this structure will work after 2020.
+################################################################################
+# * https://en.wikipedia.org/wiki/Travis_CI:
+#   - "... free open-source plans were removed in [sic] the end of 2020"
+#   - https://blog.travis-ci.com/2020-11-02-travis-ci-new-billing
+#   - https://ropensci.org/technotes/2020/11/19/moving-away-travis/
+################################################################################
 ## Machine config
 os: 'linux'
 arch: 'amd64'
@@ -22,8 +31,10 @@ script:
 ## Stages and jobs matrix
 stages:
   - test
-  - name: 'release'
-    if: 'branch = master AND type != pull_request'
+  # # As part of the switch away from Travis CI, ensure that the `release` stage
+  # # is not run inadvertently
+  # - name: 'release'
+  #   if: 'branch = master AND type != pull_request'
 jobs:
   include:
     ## Define the test stage that runs the linters (and testing matrix, if applicable)
@@ -55,15 +66,104 @@ jobs:
                    @commitlint/travis-cli
         - commitlint-travis
 
+    # Run `pre-commit` linters in a single job
+    - language: 'python'
+      env: 'Lint_pre-commit'
+      name: 'Lint: pre-commit'
+      before_install: 'skip'
+      cache:
+        directories:
+          - $HOME/.cache/pre-commit
+      script:
+        # Install and run `pre-commit`
+        - pip install pre-commit==2.7.1
+        - pre-commit run --all-files --color always --verbose
+        - pre-commit run --color always --hook-stage manual --verbose commitlint-travis
+
     ## Define the rest of the matrix based on Kitchen testing
     # Make sure the instances listed below match up with
     # the `platforms` defined in `kitchen.yml`
-    - env: INSTANCE=api-debian-10-3000-3-py3
-    - env: INSTANCE=workbench-debian-10-3000-3-py3
-    - env: INSTANCE=shell-debian-10-3000-3-py3
-    - env: INSTANCE=keepstore-debian-10-3000-3-py3
-    # - env: INSTANCE=default-ubuntu-1804-3000-3-py3
-    # - env: INSTANCE=default-centos-7-2019-2-py3
+    # - env: INSTANCE=api-debian-10-tiamat-py3
+    # - env: INSTANCE=api-debian-9-tiamat-py3
+    # - env: INSTANCE=api-ubuntu-2004-tiamat-py3
+    # - env: INSTANCE=api-ubuntu-1804-tiamat-py3
+    # - env: INSTANCE=api-ubuntu-1604-tiamat-py3
+    # - env: INSTANCE=api-centos-8-tiamat-py3
+    # - env: INSTANCE=api-centos-7-tiamat-py3
+    # - env: INSTANCE=api-amazonlinux-2-tiamat-py3
+    # - env: INSTANCE=api-oraclelinux-8-tiamat-py3
+    # - env: INSTANCE=api-oraclelinux-7-tiamat-py3
+    - env: INSTANCE=api-debian-10-master-py3
+    - env: INSTANCE=workbench-debian-10-master-py3
+    # - env: INSTANCE=shell-debian-10-master-py3
+    - env: INSTANCE=keepstore-debian-10-master-py3
+    # - env: INSTANCE=api-debian-9-master-py3
+    # - env: INSTANCE=workbench-debian-9-master-py3
+    # - env: INSTANCE=shell-debian-9-master-py3
+    # - env: INSTANCE=keepstore-debian-9-master-py3
+    # - env: INSTANCE=api-ubuntu-2004-master-py3
+    # - env: INSTANCE=workbench-ubuntu-2004-master-py3
+    # - env: INSTANCE=shell-ubuntu-2004-master-py3
+    # - env: INSTANCE=keepstore-ubuntu-2004-master-py3
+    - env: INSTANCE=api-ubuntu-1804-master-py3
+    - env: INSTANCE=workbench-ubuntu-1804-master-py3
+    # - env: INSTANCE=shell-ubuntu-1804-master-py3
+    # - env: INSTANCE=keepstore-ubuntu-1804-master-py3
+    # - env: INSTANCE=api-ubuntu-1604-master-py3
+    # - env: INSTANCE=workbench-ubuntu-1604-master-py3
+    # - env: INSTANCE=shell-ubuntu-1604-master-py3
+    # - env: INSTANCE=keepstore-ubuntu-1604-master-py3
+    # - env: INSTANCE=api-centos-8-master-py3
+    # - env: INSTANCE=workbench-centos-8-master-py3
+    # - env: INSTANCE=shell-centos-8-master-py3
+    # - env: INSTANCE=keepstore-centos-8-master-py3
+    # - env: INSTANCE=api-centos-7-master-py3
+    # - env: INSTANCE=workbench-centos-7-master-py3
+    - env: INSTANCE=shell-centos-7-master-py3
+    - env: INSTANCE=keepstore-centos-7-master-py3
+    # - env: INSTANCE=api-amazonlinux-2-master-py3
+    # - env: INSTANCE=workbench-amazonlinux-2-master-py3
+    # - env: INSTANCE=shell-amazonlinux-2-master-py3
+    # - env: INSTANCE=keepstore-amazonlinux-2-master-py3
+    # - env: INSTANCE=api-oraclelinux-8-master-py3
+    # - env: INSTANCE=workbench-oraclelinux-8-master-py3
+    # - env: INSTANCE=shell-oraclelinux-8-master-py3
+    # - env: INSTANCE=keepstore-oraclelinux-8-master-py3
+    # - env: INSTANCE=api-oraclelinux-7-master-py3
+    # - env: INSTANCE=workbench-oraclelinux-7-master-py3
+    # - env: INSTANCE=shell-oraclelinux-7-master-py3
+    # - env: INSTANCE=keepstore-oraclelinux-7-master-py3
+    # - env: INSTANCE=api-debian-10-3002-5-py3
+    # - env: INSTANCE=api-debian-9-3002-5-py3
+    # - env: INSTANCE=api-ubuntu-2004-3002-5-py3
+    # - env: INSTANCE=api-ubuntu-1804-3002-5-py3
+    # - env: INSTANCE=api-ubuntu-1604-3002-5-py3
+    # - env: INSTANCE=api-centos-8-3002-5-py3
+    # - env: INSTANCE=api-centos-7-3002-5-py3
+    # - env: INSTANCE=api-amazonlinux-2-3002-5-py3
+    # - env: INSTANCE=api-oraclelinux-8-3002-5-py3
+    # - env: INSTANCE=api-oraclelinux-7-3002-5-py3
+    # - env: INSTANCE=api-debian-10-3001-6-py3
+    # - env: INSTANCE=api-debian-9-3001-6-py3
+    # - env: INSTANCE=api-ubuntu-2004-3001-6-py3
+    # - env: INSTANCE=api-ubuntu-1804-3001-6-py3
+    # - env: INSTANCE=api-ubuntu-1604-3001-6-py3
+    # - env: INSTANCE=api-centos-8-3001-6-py3
+    # - env: INSTANCE=api-centos-7-3001-6-py3
+    # - env: INSTANCE=api-amazonlinux-2-3001-6-py3
+    # - env: INSTANCE=api-oraclelinux-8-3001-6-py3
+    # - env: INSTANCE=api-oraclelinux-7-3001-6-py3
+    # - env: INSTANCE=api-debian-10-3000-8-py3
+    # - env: INSTANCE=api-debian-9-3000-8-py3
+    # - env: INSTANCE=api-ubuntu-1804-3000-8-py3
+    # - env: INSTANCE=api-ubuntu-1604-3000-8-py3
+    # - env: INSTANCE=api-centos-8-3000-8-py3
+    # - env: INSTANCE=api-centos-7-3000-8-py3
+    # - env: INSTANCE=api-amazonlinux-2-3000-8-py3
+    # - env: INSTANCE=api-oraclelinux-8-3000-8-py3
+    # - env: INSTANCE=api-oraclelinux-7-3000-8-py3
+    # - env: INSTANCE=api-ubuntu-1804-3000-8-py2
+    # - env: INSTANCE=api-ubuntu-1604-3000-8-py2
 
     ## Define the release stage that runs `semantic-release`
     - stage: 'release'
@@ -90,3 +190,15 @@ jobs:
         edge: true
         # Run `semantic-release`
         script: 'npx semantic-release@15.14'
+
+# Notification options: `always`, `never` or `change`
+notifications:
+  webhooks:
+    if: 'repo = saltstack-formulas/arvados-formula'
+    urls:
+      - https://saltstack-formulas.zulipchat.com/api/v1/external/travis?api_key=HsIq3o5QmLxdnVCKF9is0FUIpkpAY79P&stream=CI&topic=saltstack-formulas%2Farvados-formula&ignore_pull_requests=true
+    on_success: always  # default: always
+    on_failure: always  # default: always
+    on_start: always    # default: never
+    on_cancel: always   # default: always
+    on_error: always    # default: always