Skip to content

CI-MAIN

CI-MAIN #750

Workflow file for this run

# This is a basic workflow to help you get started with Actions
name: CI-MAIN
# Controls when the action will run.
on:
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
schedule:
- cron: '30 22 * * 0-4'
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
Deployment:
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v2
- name: create kubeconfig
run: |
echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
env:
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
- name: verify kubectl
run: kubectl cluster-info
- name: deploy
run: ./travis/deploy.sh ${{ secrets.HKUBE_DOMAIN_RAW }}
env:
DOCKER_BUILD_PUSH_PASSWORD: ${{ secrets.DOCKER_BUILD_PUSH_PASSWORD }}
DOCKER_BUILD_PUSH_USERNAME: ${{ secrets.DOCKER_BUILD_PUSH_USERNAME }}
SwaggerTests:
runs-on: ubuntu-latest
needs: Deployment
steps:
- uses: actions/checkout@v2
- run: npm ci
- name: create kubeconfig
run: |
echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
env:
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
- name: test
run: npm test
env:
BASE_URL: https://${{ secrets.TEST_KUBERNETES_MASTER_IP }}
WEBHOOK_URL: ${{ secrets.WEBHOOK_MASTER_URL }}
KEYCLOAK_DEV_PASS: ${{ secrets.KEYCLOAK_DEV_PASS }}
KEYCLOAK_DEV_USER: ${{ secrets.KEYCLOAK_DEV_USER }}
KEYCLOAK_GUEST_PASS: ${{ secrets.KEYCLOAK_GUEST_PASS }}
KEYCLOAK_GUEST_USER: ${{ secrets.KEYCLOAK_GUEST_USER }}
GraphQLTests:
runs-on: ubuntu-latest
needs: Deployment
steps:
- uses: actions/checkout@v2
- run: npm ci
- name: create kubeconfig
run: |
echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
env:
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
- name: test
run: npm run graphql
env:
BASE_URL: https://${{ secrets.TEST_KUBERNETES_MASTER_IP }}
WEBHOOK_URL: ${{ secrets.WEBHOOK_MASTER_URL }}
KEYCLOAK_DEV_PASS: ${{ secrets.KEYCLOAK_DEV_PASS }}
KEYCLOAK_DEV_USER: ${{ secrets.KEYCLOAK_DEV_USER }}
KEYCLOAK_GUEST_PASS: ${{ secrets.KEYCLOAK_GUEST_PASS }}
KEYCLOAK_GUEST_USER: ${{ secrets.KEYCLOAK_GUEST_USER }}
PipelineTests:
runs-on: ubuntu-latest
needs: [SwaggerTests, GraphQLTests]
steps:
- uses: actions/checkout@v2
- run: npm ci
- name: create kubeconfig
run: |
echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
env:
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
- name: test
run: npm run pipelinetest
env:
BASE_URL: https://${{ secrets.TEST_KUBERNETES_MASTER_IP }}
WEBHOOK_URL: ${{ secrets.WEBHOOK_MASTER_URL }}
KEYCLOAK_DEV_PASS: ${{ secrets.KEYCLOAK_DEV_PASS }}
KEYCLOAK_DEV_USER: ${{ secrets.KEYCLOAK_DEV_USER }}
NodeTests:
runs-on: ubuntu-latest
needs: [SwaggerTests, GraphQLTests]
steps:
- uses: actions/checkout@v2
- run: npm ci
- name: create kubeconfig
run: |
echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
env:
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
- name: test
run: npm run nodetest
env:
BASE_URL: https://${{ secrets.TEST_KUBERNETES_MASTER_IP }}
WEBHOOK_URL: ${{ secrets.WEBHOOK_MASTER_URL }}
KEYCLOAK_DEV_PASS: ${{ secrets.KEYCLOAK_DEV_PASS }}
KEYCLOAK_DEV_USER: ${{ secrets.KEYCLOAK_DEV_USER }}
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
K8S_VERSION: 1.13
K8S_CONFIG_PATH: /tmp/config
JagearTests:
runs-on: ubuntu-latest
needs: [SwaggerTests, GraphQLTests]
steps:
- uses: actions/checkout@v2
- run: npm ci
- name: create kubeconfig
run: |
echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
env:
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
- name: test
run: npm run jageartest
env:
BASE_URL: https://${{ secrets.TEST_KUBERNETES_MASTER_IP }}
WEBHOOK_URL: ${{ secrets.WEBHOOK_MASTER_URL }}
KEYCLOAK_DEV_PASS: ${{ secrets.KEYCLOAK_DEV_PASS }}
KEYCLOAK_DEV_USER: ${{ secrets.KEYCLOAK_DEV_USER }}
CodeApiTests:
runs-on: ubuntu-latest
needs: [SwaggerTests, GraphQLTests]
steps:
- uses: actions/checkout@v2
- run: npm ci
- name: create kubeconfig
run: |
echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
env:
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
- name: test
run: npm run codeApiTests
env:
BASE_URL: https://${{ secrets.TEST_KUBERNETES_MASTER_IP }}
WEBHOOK_URL: ${{ secrets.WEBHOOK_MASTER_URL }}
KEYCLOAK_DEV_PASS: ${{ secrets.KEYCLOAK_DEV_PASS }}
KEYCLOAK_DEV_USER: ${{ secrets.KEYCLOAK_DEV_USER }}
# algorithmBuild:
# runs-on: ubuntu-latest
# needs: [jagearTest,nodeTest,pipelineTest,codeApiTest]
# if: ${{ always() }}
# steps:
# - uses: actions/checkout@v2
# - run: npm ci
# - name: create kubeconfig
# run: |
# echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
# echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
# env:
# KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
# - name: test
# run: |
# echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
# echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
# npm run algorithmBuild
# env:
# BASE_URL: https://${{ secrets.TEST_KUBERNETES_MASTER_IP }}
# WEBHOOK_URL: ${{ secrets.WEBHOOK_MASTER_URL }}
# KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
# K8S_VERSION: 1.13
# K8S_CONFIG_PATH: /tmp/config
# GitHub_Token: ${{ secrets.GIT_TOKEN }}
# Gitlab_Token: ${{ secrets.GITLAB_TOKEN }}
HkubeCliTests:
runs-on: ubuntu-latest
needs: [JagearTests, NodeTests, PipelineTests, CodeApiTests]
if: ${{ always() }}
steps:
- uses: actions/checkout@v2
- run: npm ci
- name: create kubeconfig
run: |
echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
env:
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
- name: create hkubectl
run: |
./travis/cli.sh
echo $PWD >> $GITHUB_PATH
env:
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
HKUBE_URL: ${{ secrets.HKUBE }}
- name: test
run: |
npm run cliTests
env:
BASE_URL: https://${{ secrets.TEST_KUBERNETES_MASTER_IP }}
WEBHOOK_URL: ${{ secrets.WEBHOOK_MASTER_URL }}
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
KEYCLOAK_DEV_PASS: ${{ secrets.KEYCLOAK_DEV_PASS }}
KEYCLOAK_DEV_USER: ${{ secrets.KEYCLOAK_DEV_USER }}
K8S_VERSION: 1.13
K8S_CONFIG_PATH: /tmp/config
DatsourceTests:
runs-on: ubuntu-latest
needs: [JagearTests, NodeTests, PipelineTests, CodeApiTests]
if: ${{ always() }}
steps:
- uses: actions/checkout@v2
- run: npm ci
- name: create kubeconfig
run: |
echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
env:
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
- name: test
run: |
echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
npm run dataSourceTest
env:
BASE_URL: https://${{ secrets.TEST_KUBERNETES_MASTER_IP }}
WEBHOOK_URL: ${{ secrets.WEBHOOK_MASTER_URL }}
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
K8S_VERSION: 1.13
K8S_CONFIG_PATH: /tmp/config
GitHub_Token: ${{ secrets.GIT_TOKEN }}
Gitlab_Token: ${{ secrets.GITLAB_TOKEN }}
AlgorithmTests:
runs-on: ubuntu-latest
needs: [HkubeCliTests]
if: ${{ always() }}
steps:
- uses: actions/checkout@v2
- run: npm ci
- name: create kubeconfig
run: |
echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
env:
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
- name: test
run: |
echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
npm run algorithmtest
env:
BASE_URL: https://${{ secrets.TEST_KUBERNETES_MASTER_IP }}
WEBHOOK_URL: ${{ secrets.WEBHOOK_MASTER_URL }}
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
KEYCLOAK_DEV_PASS: ${{ secrets.KEYCLOAK_DEV_PASS }}
KEYCLOAK_DEV_USER: ${{ secrets.KEYCLOAK_DEV_USER }}
K8S_VERSION: 1.13
K8S_CONFIG_PATH: /tmp/config
StreamingTests:
runs-on: ubuntu-latest
needs: [HkubeCliTests]
if: ${{ always() }}
steps:
- uses: actions/checkout@v2
- run: npm ci
- name: create kubeconfig
run: |
echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
env:
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
- name: test
run: |
echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
npm run streaming
env:
BASE_URL: https://${{ secrets.TEST_KUBERNETES_MASTER_IP }}
WEBHOOK_URL: ${{ secrets.WEBHOOK_MASTER_URL }}
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
KEYCLOAK_DEV_PASS: ${{ secrets.KEYCLOAK_DEV_PASS }}
KEYCLOAK_DEV_USER: ${{ secrets.KEYCLOAK_DEV_USER }}
K8S_VERSION: 1.13
K8S_CONFIG_PATH: /tmp/config
HighAvailability:
runs-on: ubuntu-latest
needs: [AlgorithmTests, StreamingTests]
if: ${{ always() }}
steps:
- uses: actions/checkout@v2
- run: npm ci
- name: create kubeconfig
run: |
echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
env:
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
- name: test
run: |
echo "$KUBE_CONFIG_DATA" | base64 --decode > /tmp/config
echo KUBECONFIG=/tmp/config >> $GITHUB_ENV
npm run HighAvailability
env:
BASE_URL: https://${{ secrets.TEST_KUBERNETES_MASTER_IP }}
WEBHOOK_URL: ${{ secrets.WEBHOOK_MASTER_URL }}
KUBE_CONFIG_DATA: ${{ secrets.TEST_KUBECONFIG }}
KEYCLOAK_DEV_PASS: ${{ secrets.KEYCLOAK_DEV_PASS }}
KEYCLOAK_DEV_USER: ${{ secrets.KEYCLOAK_DEV_USER }}
K8S_VERSION: 1.13
K8S_CONFIG_PATH: /tmp/config