move chartpress yaml to work with deploy action #1425
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
name: Acceptance Tests | |
on: | |
pull_request: | |
types: | |
- opened | |
- edited | |
- synchronize | |
- reopened | |
- closed | |
workflow_dispatch: | |
jobs: | |
acceptance-tests-images: | |
strategy: | |
matrix: | |
kind-image-version: ["v1.21.2", "v1.20.7", "v1.19.11"] | |
helm-version: ["v3.6.3", "v3.0.0"] | |
test-image: | |
- image: jupyter/minimal-notebook | |
env: lab | |
spec: jupyterlab.cy.js | |
include: | |
- kind-image-version: "v1.21.2" | |
helm-version: "v3.6.3" | |
test-image: | |
image: jupyter/r-notebook | |
env: lab | |
spec: jupyterlab.cy.js | |
- kind-image-version: "v1.21.2" | |
helm-version: "v3.6.3" | |
test-image: | |
image: jupyter/tensorflow-notebook | |
env: lab | |
spec: jupyterlab.cy.js | |
- kind-image-version: "v1.21.2" | |
helm-version: "v3.6.3" | |
test-image: | |
image: jupyter/all-spark-notebook | |
env: lab | |
spec: jupyterlab.cy.js | |
runs-on: ubuntu-latest | |
steps: | |
- name: Pull Code | |
uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
# Used for debugging to get a shell into the action | |
# - name: Setup tmate session | |
# uses: mxschmitt/action-tmate@v3 | |
# with: | |
# limit-access-to-actor: true | |
- name: Make Kind Config File | |
run: | | |
cat <<EOF > kind-config.yaml | |
kind: Cluster | |
apiVersion: kind.x-k8s.io/v1alpha4 | |
nodes: | |
- role: control-plane | |
image: kindest/node:${{ matrix.kind-image-version }} | |
kubeadmConfigPatches: | |
- | | |
kind: InitConfiguration | |
nodeRegistration: | |
kubeletExtraArgs: | |
node-labels: "ingress-ready=true" | |
extraPortMappings: | |
- containerPort: 80 | |
hostPort: 80 | |
protocol: TCP | |
- containerPort: 443 | |
hostPort: 443 | |
protocol: TCP | |
EOF | |
- name: Create k8s Kind Cluster | |
uses: helm/[email protected] | |
with: | |
cluster_name: kind | |
wait: 10m0s | |
config: kind-config.yaml | |
- uses: azure/setup-helm@v1 | |
with: | |
version: ${{ matrix.helm-version }} | |
id: install | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: 3.8 | |
cache: pipenv | |
- name: Build Chart and Images | |
run: | | |
python -m pip install --upgrade pip pipenv | |
pipenv install --dev | |
cd helm-chart | |
pipenv run chartpress | |
kind load docker-image $(pipenv run chartpress --list-images) | |
- name: Install Amalthea and Ingress-Nginx | |
run: | | |
# Keep pinned version for controller because it does not work with all k8s versions, | |
# Using the newest ingress controller version will fail with older k8s versions. Whereas the old ingress version | |
# works with all k8s versions that we currently test with. | |
VERSION=controller-v1.0.3 | |
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/$VERSION/deploy/static/provider/kind/deploy.yaml | |
kubectl wait --namespace ingress-nginx --for=condition=ready pod --selector=app.kubernetes.io/component=controller --timeout=90s | |
helm dep update helm-chart/amalthea | |
helm install amalthea helm-chart/amalthea --wait | |
- name: Run Acceptance Tests | |
uses: cypress-io/github-action@v4 | |
env: | |
TEST_IMAGE_NAME: ${{ matrix.test-image.image }} | |
TEST_SPEC: ${{ matrix.test-image.spec }} | |
ENVIRONMENT: ${{ matrix.test-image.env }} | |
ELECTRON_EXTRA_LAUNCH_ARGS: '--disable-gpu' | |
with: | |
working-directory: acceptance-tests | |
command: npx mocha test.js |