Skip to content

Update deps

Update deps #646

Workflow file for this run

name: CI
on:
pull_request:
branches:
- "*"
push:
branches:
- master
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
concurrency:
group: '${{ github.head_ref || github.ref }}'
cancel-in-progress: true
jobs:
build:
name: Build
runs-on: ubuntu-24.04
steps:
- name: Set up Go 1.23
uses: actions/setup-go@v1
with:
go-version: '1.23'
id: go
- uses: actions/checkout@v2
- name: Set up QEMU
id: qemu
uses: docker/setup-qemu-action@v1
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Prepare Host
run: |
sudo apt-get -qq update || true
sudo apt-get install -y bzr
curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.21.1/bin/linux/amd64/kubectl
chmod +x ./kubectl
sudo mv ./kubectl /usr/local/bin/kubectl
# - name: Run checks
# run: |
# make ci
- name: Log in to the GitHub Container registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Publish to the GitHub Container registry
id: publish-to-ghcr
env:
REGISTRY: ghcr.io/${{ github.repository_owner }}
APPSCODE_ENV: prod
run: |
make version >> $GITHUB_ENV
make push
kubernetes:
name: Kubernetes
runs-on: ubuntu-24.04
needs: build
strategy:
matrix:
k8s: [v1.25.8]
steps:
- uses: actions/checkout@v2
- name: Create Kubernetes ${{ matrix.k8s }} cluster
id: kind
uses: engineerd/[email protected]
with:
version: v0.25.0
config: hack/kubernetes/kind.yaml
image: kindest/node:${{ matrix.k8s }}
- name: Prepare cluster for testing
id: local-path
run: |
echo "waiting for nodes to be ready ..."
kubectl wait --for=condition=Ready nodes --all --timeout=5m
kubectl get nodes
echo
kubectl version
echo
echo "install helm 3"
curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash
- name: Check out installer
run: |
cd ..
git clone https://github.com/open-viz/installer.git
cd installer
git checkout master
- name: Run e2e tests
env:
REGISTRY: ghcr.io/${{ github.repository_owner }}
TEST_CREDENTIALS: ${{ secrets.TEST_CREDENTIALS }}
GOOGLE_SERVICE_ACCOUNT_JSON_KEY: ${{ secrets.GOOGLE_SERVICE_ACCOUNT_JSON_KEY }}
run: |
echo "preparing test credentials"
mkdir -p hack/config
echo -n "$TEST_CREDENTIALS" > hack/config/.env
echo >> hack/config/.env
echo "GOOGLE_SERVICE_ACCOUNT_JSON_KEY=$(echo $GOOGLE_SERVICE_ACCOUNT_JSON_KEY)" >> hack/config/.env
make install || ( kubectl describe deployment -n openviz grafana-tools; kubectl logs -n openviz deployment/grafana-tools; exit 1; )
echo
make e2e-tests
cleanup:
name: Cleanup
runs-on: ubuntu-24.04
if: ${{ always() }}
needs: [build, kubernetes]
steps:
- uses: actions/checkout@v2
- name: Install gh-tools
run: |
curl -fsSL -O https://github.com/appscodelabs/gh-tools/releases/download/v0.2.14/gh-tools-linux-amd64
chmod +x gh-tools-linux-amd64
sudo mv gh-tools-linux-amd64 /usr/local/bin/gh-tools
- name: Set tags as GITHUB_ENV
env:
REGISTRY: ghcr.io/${{ github.repository_owner }}
run: |
make version >> $GITHUB_ENV
- name: Delete CI Docker images
env:
GH_TOOLS_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
echo "deleting ghcr.io/${{ github.repository_owner }}/grafana-tools:${{ env.TAG_PROD }}"
gh-tools delete-package \
--org=${{ github.repository_owner }} \
--pkg=grafana-tools \
--tag=${{ env.TAG_PROD }} || true
echo "deleting ghcr.io/${{ github.repository_owner }}/grafana-tools:${{ env.TAG_DBG }}"
gh-tools delete-package \
--org=${{ github.repository_owner }} \
--pkg=grafana-tools \
--tag=${{ env.TAG_DBG }} || true