2019-12-16 11:19:37 +01:00
|
|
|
name: ci
|
|
|
|
|
|
|
|
on:
|
|
|
|
push:
|
2020-09-30 21:50:57 +02:00
|
|
|
branches: [master]
|
|
|
|
pull_request:
|
|
|
|
branches: [master]
|
2019-12-16 11:19:37 +01:00
|
|
|
schedule:
|
2019-12-21 10:06:51 +01:00
|
|
|
- cron: '7 4 * * 4' # weekly on thursday morning
|
2019-12-16 11:19:37 +01:00
|
|
|
|
|
|
|
jobs:
|
|
|
|
build:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
2020-08-21 14:19:51 +02:00
|
|
|
- uses: actions/checkout@v2
|
2019-12-16 11:19:37 +01:00
|
|
|
- name: Set up Python 3.8
|
2020-08-21 14:19:51 +02:00
|
|
|
uses: actions/setup-python@v2
|
2019-12-16 11:19:37 +01:00
|
|
|
with:
|
|
|
|
python-version: 3.8
|
|
|
|
- name: Install dependencies
|
|
|
|
run: |
|
2020-08-08 21:26:49 +02:00
|
|
|
pip install poetry
|
|
|
|
poetry install
|
2019-12-16 11:19:37 +01:00
|
|
|
- name: Linting
|
|
|
|
run: |
|
2020-08-08 21:26:49 +02:00
|
|
|
make lint
|
2020-08-21 14:19:51 +02:00
|
|
|
|
|
|
|
e2e-with-kind:
|
|
|
|
name: e2e with kind
|
|
|
|
needs: build
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
matrix:
|
|
|
|
k8s-version:
|
2021-01-25 12:23:07 +01:00
|
|
|
- v1.16.15
|
|
|
|
- v1.18.15
|
|
|
|
- v1.19.7
|
2020-08-21 14:19:51 +02:00
|
|
|
env:
|
2021-01-25 12:23:07 +01:00
|
|
|
kind-version: v0.10.0
|
2020-08-21 14:19:51 +02:00
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Set up Python 3.8
|
|
|
|
uses: actions/setup-python@v2
|
|
|
|
with:
|
|
|
|
python-version: 3.8
|
|
|
|
- name: Install dependencies
|
|
|
|
run: |
|
|
|
|
pip install poetry
|
|
|
|
poetry install
|
|
|
|
- name: Set up kind with K8s version ${{ matrix.k8s-version }}
|
2020-11-12 08:30:26 +01:00
|
|
|
uses: engineerd/setup-kind@v0.5.0
|
2020-08-21 14:19:51 +02:00
|
|
|
with:
|
|
|
|
image: kindest/node:${{ matrix.k8s-version }}
|
|
|
|
version: ${{ env.kind-version }}
|
|
|
|
- name: E2E test
|
|
|
|
run: |
|
|
|
|
kubectl cluster-info
|
|
|
|
kubectl proxy &
|
2020-11-12 08:30:26 +01:00
|
|
|
sleep 1
|
2020-08-21 14:19:51 +02:00
|
|
|
make e2e-with-kind
|
2020-09-30 21:50:57 +02:00
|
|
|
|
|
|
|
codeql:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v2
|
|
|
|
with:
|
|
|
|
# We must fetch at least the immediate parents so that if this is
|
|
|
|
# a pull request then we can checkout the head.
|
|
|
|
fetch-depth: 2
|
|
|
|
|
|
|
|
# If this run was triggered by a pull request event, then checkout
|
|
|
|
# the head of the pull request instead of the merge commit.
|
|
|
|
- run: git checkout HEAD^2
|
|
|
|
if: ${{ github.event_name == 'pull_request' }}
|
|
|
|
|
|
|
|
# Initializes the CodeQL tools for scanning.
|
|
|
|
- name: Initialize CodeQL
|
|
|
|
uses: github/codeql-action/init@v1
|
|
|
|
with:
|
|
|
|
languages: python
|
|
|
|
# If you wish to specify custom queries, you can do so here or in a config file.
|
|
|
|
# By default, queries listed here will override any specified in a config file.
|
|
|
|
# Prefix the list here with "+" to use these queries and those in the config file.
|
|
|
|
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
|
|
|
|
|
|
|
- name: Perform CodeQL Analysis
|
|
|
|
uses: github/codeql-action/analyze@v1
|