Procházet zdrojové kódy

feat(): adds GitHub CI integration, retire Travis CI

Nils Wisiol před 5 roky
rodič
revize
cce4ead035
2 změnil soubory, kde provedl 66 přidání a 66 odebrání
  1. 66 0
      .github/workflows/main.yml
  2. 0 66
      .travis.yml

+ 66 - 0
.github/workflows/main.yml

@@ -0,0 +1,66 @@
+name: CI
+
+# Controls when the action will run. Triggers the workflow on push or pull request
+# events but only for the master branch
+on:
+  push:
+    branches: [ master ]
+  pull_request:
+    branches: [ master ]
+
+env:
+  DESECSTACK_DOMAIN: your.hostname.example.com
+  DESECSTACK_NS: ns1.example.com ns2.example.com
+  DESECSTACK_API_ADMIN: john.doe@example.com
+  DESECSTACK_API_SEPA_CREDITOR_ID: TESTCREDITORID
+  DESECSTACK_API_SEPA_CREDITOR_NAME: TESTCREDITORNAME
+  DESECSTACK_API_EMAIL_HOST: mail.your.hostname.example.com
+  DESECSTACK_API_EMAIL_HOST_USER: user
+  DESECSTACK_API_EMAIL_HOST_PASSWORD: password
+  DESECSTACK_API_EMAIL_PORT: 25
+  DESECSTACK_API_SECRETKEY: 9Fn33T5yGuds
+  DESECSTACK_API_PSL_RESOLVER: 8.8.8.8
+  DESECSTACK_DBAPI_PASSWORD_desec: 9Fn33T5yGueeee
+  DESECSTACK_DB_PASSWORD_pdnslord: 9Fn33T5yGulkjlskdf
+  DESECSTACK_DB_PASSWORD_pdnsmaster: 9Fn33T5yGukjwelt
+  DESECSTACK_NSLORD_APIKEY: 9Fn33T5yGukjekwjew
+  DESECSTACK_NSLORD_DEFAULT_TTL: 1234
+  DESECSTACK_NSMASTER_APIKEY: LLq1orOQuXCINUz4TV
+  DESECSTACK_DBMASTER_PORT: 13306
+  DESECSTACK_IPV4_REAR_PREFIX16: 172.16
+  DESECSTACK_IPV6_SUBNET: bade:affe:dead:beef:b011::/80
+  DESECSTACK_IPV6_ADDRESS: bade:affe:dead:beef:b011:0642:ac10:0080
+  DESECSTACK_WWW_CERTS: ./certs
+  DESECSTACK_MINIMUM_TTL_DEFAULT: 3600
+  DESECSTACK_PROMETHEUS_PASSWORD: Je9NNkqbULsg
+
+# A workflow run is made up of one or more jobs that can run sequentially or in parallel
+jobs:
+  build:
+    runs-on: ubuntu-latest
+
+    steps:
+    # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
+    - uses: actions/checkout@v2
+
+    - name: Build Images
+      run: |
+        cd $GITHUB_WORKSPACE
+        docker-compose build
+        docker-compose -f docker-compose.yml -f docker-compose.test-e2e.yml build test-e2e
+
+    - name: Run e2e Tests
+      run: |
+        docker-compose -f docker-compose.yml -f docker-compose.test-e2e.yml run -T test-e2e bash -c "./apiwait 45 && mocha ./spec"
+        docker-compose -f docker-compose.yml -f docker-compose.test-e2e.yml down -v
+        docker-compose down -v
+
+    - name: Run API Tests
+      run: |
+        docker-compose -f docker-compose.yml -f docker-compose.test-api.yml run -T api bash -c "./entrypoint-tests.sh"
+        docker-compose -f docker-compose.yml -f docker-compose.test-api.yml down -v
+        docker-compose down -v
+
+    - name: Processes Status
+      if: always()
+      run: docker-compose ps

+ 0 - 66
.travis.yml

@@ -1,66 +0,0 @@
-language: node_js
-sudo: required
-
-node_js:
-- "node"
-
-env:
-  global:
-   - DESECSTACK_DOMAIN=your.hostname.example.com
-   - DESECSTACK_NS=ns1.example.com ns2.example.com
-   - DESECSTACK_API_ADMIN=john.doe@example.com
-   - DESECSTACK_API_SEPA_CREDITOR_ID=TESTCREDITORID
-   - DESECSTACK_API_SEPA_CREDITOR_NAME=TESTCREDITORNAME
-   - DESECSTACK_API_EMAIL_HOST=mail.your.hostname.example.com
-   - DESECSTACK_API_EMAIL_HOST_USER=user
-   - DESECSTACK_API_EMAIL_HOST_PASSWORD=password
-   - DESECSTACK_API_EMAIL_PORT=25
-   - DESECSTACK_API_SECRETKEY=9Fn33T5yGuds
-   - DESECSTACK_API_PSL_RESOLVER=8.8.8.8
-   - DESECSTACK_DBAPI_PASSWORD_desec=9Fn33T5yGueeee
-   - DESECSTACK_DB_PASSWORD_pdnslord=9Fn33T5yGulkjlskdf
-   - DESECSTACK_DB_PASSWORD_pdnsmaster=9Fn33T5yGukjwelt
-   - DESECSTACK_NSLORD_APIKEY=9Fn33T5yGukjekwjew
-   - DESECSTACK_NSLORD_DEFAULT_TTL=1234
-   - DESECSTACK_NSMASTER_APIKEY=LLq1orOQuXCINUz4TV
-   - DESECSTACK_DBMASTER_PORT=13306
-   - DESECSTACK_IPV4_REAR_PREFIX16=172.16
-   - DESECSTACK_IPV6_SUBNET=bade:affe:dead:beef:b011::/80
-   - DESECSTACK_IPV6_ADDRESS=bade:affe:dead:beef:b011:0642:ac10:0080
-   - DESECSTACK_WWW_CERTS=./certs
-   - DESECSTACK_MINIMUM_TTL_DEFAULT=3600
-   - DESECSTACK_PROMETHEUS_PASSWORD=Je9NNkqbULsg
-
-services:
-  - docker
-
-before_install:
-  - mkdir certs dbmastercerts
-
-  # Prepare images
-  # we build them separately to get timing information from travis
-
-  # live images
-  - docker-compose build dblord
-  - docker-compose build dbmaster
-  - docker-compose build dbapi
-  - docker-compose build nslord
-  - docker-compose build nsmaster
-  - docker-compose build api
-  - docker-compose build www
-
-  # build images
-  - docker-compose -f docker-compose.yml -f docker-compose.test-e2e.yml build test-e2e
-
-script:
-  # e2e tests
-  - docker-compose -f docker-compose.yml -f docker-compose.test-e2e.yml run -T test-e2e bash -c "./apiwait 45 && mocha ./spec"
-  - docker-compose -f docker-compose.yml -f docker-compose.test-e2e.yml down -v
-
-  # API tests
-  - docker-compose -f docker-compose.yml -f docker-compose.test-api.yml run -T api bash -c "./entrypoint-tests.sh"
-  - docker-compose -f docker-compose.yml -f docker-compose.test-api.yml down -v
-
-after_failure:
-  - docker-compose ps
-  - docker-compose logs