kube-stale-resources/.github/workflows/ci.yml

89 lines
2.3 KiB
YAML

name: ci
on:
push:
branches: [master]
pull_request:
branches: [master]
schedule:
- cron: '7 4 * * 4' # weekly on thursday morning
jobs:
build:
runs-on: ubuntu-latest
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: Linting
run: |
make lint
e2e-with-kind:
name: e2e with kind
needs: build
runs-on: ubuntu-latest
strategy:
matrix:
k8s-version:
- v1.18.19
- v1.19.11
- v1.20.7
- v1.21.1
env:
kind-version: v0.11.1
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 }}
uses: engineerd/setup-kind@v0.5.0
with:
image: kindest/node:${{ matrix.k8s-version }}
version: ${{ env.kind-version }}
- name: E2E test
run: |
kubectl cluster-info
kubectl proxy &
sleep 1
make e2e-with-kind
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
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