mirror of
https://github.com/gravitational/teleport.git
synced 2026-11-02 14:59:53 +08:00
This PR implements the core of the kube-agent-updater, which is part of https://github.com/gravitational/teleport/issues/21516#issue-1576935859 In order to have a fully working updater we still need to: - implement the interfaces for version retrieval, image validation and maintenance trigger - add statefulset support (and deal with the potential deadlocks) - implement the CI and release pipeline (Dockerfile, README, Makefile, github action, drone) - integrate in the `teleport-kube-agent` helm chart Those changes will happen in subsequent PRs.
94 lines
2.6 KiB
YAML
94 lines
2.6 KiB
YAML
name: Flaky Tests Detector
|
|
run-name: Flaky Tests Detector - ${{ github.run_id }} - @${{ github.actor }}
|
|
|
|
on:
|
|
pull_request:
|
|
paths:
|
|
- '**.go'
|
|
|
|
env:
|
|
ATTEMPTS: 100
|
|
|
|
jobs:
|
|
test:
|
|
name: Flaky tests detector
|
|
runs-on: ubuntu-latest # do not use large runner to catch more issues
|
|
|
|
permissions:
|
|
contents: read
|
|
packages: read
|
|
|
|
container:
|
|
image: ghcr.io/gravitational/teleport-buildbox:teleport13
|
|
env:
|
|
TELEPORT_ETCD_TEST: yes
|
|
TELEPORT_ETCD_TEST_ENDPOINT: https://etcd0:2379
|
|
TELEPORT_XAUTH_TEST: yes
|
|
TELEPORT_BPF_TEST: yes
|
|
WEBASSETS_SKIP_BUILD: 1
|
|
options: --cap-add=SYS_ADMIN --privileged
|
|
|
|
services:
|
|
etcd0:
|
|
image: ghcr.io/gravitational/ci-etcd:3.3.9
|
|
options: >-
|
|
--health-interval 10s
|
|
--health-timeout 5s
|
|
--health-retries 5
|
|
--add-host etcd0:127.0.0.1
|
|
ports:
|
|
- 2379:2379
|
|
- 2380:2380
|
|
- 3379:3379
|
|
|
|
steps:
|
|
- name: Checkout Teleport
|
|
uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Prepare workspace
|
|
uses: ./.github/actions/prepare-workspace
|
|
|
|
- name: Mount debugfs
|
|
run: mount -t debugfs none /sys/kernel/debug/
|
|
|
|
- name: Prepare unit tests
|
|
run: make test-go-prepare
|
|
|
|
- name: Run base difftest
|
|
uses: ./.github/actions/difftest
|
|
with:
|
|
flags: -e "integrations/operator/**/*" -e "tool/tsh/**/*" -e "integration/**/*" -e "build.assets/**/*" -e "lib/auth/webauthncli/**/*" -e "lib/auth/touchid/**/*" -e "api/**/*" -e "integrations/kube-agent-updater/**/*"
|
|
target: test-go-unit
|
|
|
|
- name: Run libfido2 difftest
|
|
uses: ./.github/actions/difftest
|
|
with:
|
|
flags: --include "lib/auth/webauthncli/**/*"
|
|
target: test-go-libfido2
|
|
|
|
- name: Run touch-id difftest
|
|
uses: ./.github/actions/difftest
|
|
with:
|
|
flags: --include "lib/auth/touchid/**/*"
|
|
target: test-go-touch-id
|
|
|
|
- name: Run tsh difftest
|
|
uses: ./.github/actions/difftest
|
|
with:
|
|
flags: --include "tool/tsh/**/*"
|
|
target: test-go-tsh
|
|
|
|
- name: Run api difftest
|
|
uses: ./.github/actions/difftest
|
|
with:
|
|
flags: --include "api/**/*" --relative "api"
|
|
target: test-api
|
|
|
|
- name: Run kube-agent-updater difftest
|
|
uses: ./.github/actions/difftest
|
|
with:
|
|
flags: --include "integrations/kube-agent-updater/**/*" --relative "integrations/kube-agent-updater"
|
|
target: test-kube-agent-updater
|