Add failsafe-go #45
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Code generated by build-workflows script. DO NOT EDIT. | |
# source: stores/shared-memory/.github/workflows/test.yml | |
# SPDX-FileCopyrightText: 2023-present Intel Corporation | |
# | |
# SPDX-License-Identifier: Apache-2.0 | |
name: Test Shared Memory Store | |
on: | |
push: | |
branches: | |
- 'master' | |
paths: | |
- 'stores/shared-memory/**' | |
- 'testing/**' | |
pull_request: | |
paths: | |
- 'stores/shared-memory/**' | |
- 'testing/**' | |
workflow_dispatch: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
build-controller: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Build image | |
uses: ./.github/actions/docker-build | |
with: | |
name: controller | |
context: controller | |
file: controller/build/controller/Dockerfile | |
tags: atomix/controller | |
build-controller-init: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Build image | |
uses: ./.github/actions/docker-build | |
with: | |
name: controller-init | |
context: controller | |
file: controller/build/controller-init/Dockerfile | |
tags: atomix/controller-init | |
build-shared-memory-controller: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Build image | |
uses: ./.github/actions/docker-build | |
with: | |
name: shared-memory-controller | |
context: stores/shared-memory | |
file: stores/shared-memory/build/controller/Dockerfile | |
tags: atomix/shared-memory-controller | |
build-shared-memory-node: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Build image | |
uses: ./.github/actions/docker-build | |
with: | |
name: shared-memory-node | |
context: stores/shared-memory | |
file: stores/shared-memory/build/node/Dockerfile | |
tags: atomix/shared-memory-node | |
run-tests: | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
needs: | |
- build-controller | |
- build-controller-init | |
- build-shared-memory-controller | |
- build-shared-memory-node | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Setup Helm | |
uses: ./.github/actions/setup-helm | |
- name: Setup Helmit | |
uses: ./.github/actions/setup-helmit | |
- name: Create kind cluster | |
uses: helm/kind-action@v1.4.0 | |
with: | |
cluster_name: kind | |
- name: Fetch atomix/controller | |
uses: actions/download-artifact@v3 | |
with: | |
name: controller | |
path: /tmp | |
- name: Fetch atomix/controller-init | |
uses: actions/download-artifact@v3 | |
with: | |
name: controller-init | |
path: /tmp | |
- name: Fetch atomix/shared-memory-controller | |
uses: actions/download-artifact@v3 | |
with: | |
name: shared-memory-controller | |
path: /tmp | |
- name: Fetch atomix/shared-memory-node | |
uses: actions/download-artifact@v3 | |
with: | |
name: shared-memory-node | |
path: /tmp | |
- name: Load Docker images | |
run: | | |
kind load image-archive /tmp/controller.tar | |
kind load image-archive /tmp/controller-init.tar | |
kind load image-archive /tmp/shared-memory-controller.tar | |
kind load image-archive /tmp/shared-memory-node.tar | |
- name: Install core controller | |
run: | | |
helm install \ | |
atomix-controller \ | |
./controller/chart \ | |
-n kube-system \ | |
--set image.pullPolicy=Never \ | |
--set init.image.pullPolicy=Never \ | |
--wait | |
- name: Install Shared Memory controller | |
run: | | |
helm install \ | |
atomix-shared-memory-controller \ | |
./stores/shared-memory/chart \ | |
-n kube-system \ | |
--set image.pullPolicy=Never \ | |
--set init.image.pullPolicy=Never \ | |
--wait | |
- name: Test Shared Memory controller | |
working-directory: stores/shared-memory/tests | |
run: | | |
helmit test ./... \ | |
--context ${{ github.workspace }} \ | |
--namespace test \ | |
--create-namespace \ | |
--verbose | |
- name: Record k8s status | |
if: failure() | |
run: | | |
echo "kubectl get pods --all-namespaces" | |
kubectl get pods --all-namespaces | |
echo "kubectl get storageprofiles --all-namespaces" | |
kubectl get storageprofiles --all-namespaces | |
echo "kubectl get datastores --all-namespaces" | |
kubectl get datastores --all-namespaces | |
echo "kubectl get sharedmemorystores --all-namespaces" | |
kubectl get sharedmemorystores --all-namespaces |