Add a field to disable ipv6 in pulpcore/web pods #203
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: Kubernetes Versions | |
on: | |
# push: | |
# branches: [ '*' ] | |
workflow_dispatch: | |
pull_request: | |
branches: [ main ] | |
env: | |
COLORTERM: 'yes' | |
TERM: 'xterm-256color' | |
jobs: | |
minikube: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- K8S_VERSION: v1.29.0 | |
- K8S_VERSION: v1.28.4 | |
- K8S_VERSION: v1.27.8 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python 3.8 | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.8' | |
- name: Setup Go environment | |
uses: actions/setup-go@v5 | |
with: | |
go-version-file: 'go.mod' | |
cache: true | |
- name: Install httpie | |
run: | | |
echo ::group::HTTPIE | |
sudo apt-get update -yq | |
sudo -E apt-get -yq --no-install-suggests --no-install-recommends install httpie | |
echo ::endgroup:: | |
echo "HTTPIE_CONFIG_DIR=$GITHUB_WORKSPACE/.ci/assets/httpie/" >> $GITHUB_ENV | |
echo "CI_TEST=true" >> $GITHUB_ENV | |
echo "TEST=pulp" >> $GITHUB_ENV | |
shell: bash | |
- name: Updating registries configuration | |
run: | | |
if [ -f "/etc/docker/daemon.json" ] | |
then | |
echo "INFO: | |
Updating docker configuration | |
" | |
echo "$(cat /etc/docker/daemon.json | jq -s '.[0] + { | |
"insecure-registries" : ["ingress.local","nodeport.local:30000"] | |
}')" | sudo tee /etc/docker/daemon.json | |
sudo service docker restart || true | |
fi | |
if [ -f "/etc/containers/registries.conf" ] | |
then | |
echo "INFO: | |
Updating registries configuration | |
" | |
echo "[registries.insecure] | |
registries = ['ingress.local','nodeport.local:30000'] | |
" | sudo tee -a /etc/containers/registries.conf | |
fi | |
shell: bash | |
- name: Start minikube | |
run: | | |
minikube start --memory=max --cpus=max --driver=docker --extra-config=apiserver.service-node-port-range=80-32000 --kubernetes-version=${{ matrix.K8S_VERSION }} | |
minikube addons enable metrics-server | |
echo "Kubernetes version:" | |
kubectl version -ojson|jq .serverVersion | |
- name: Try the cluster ! | |
run: kubectl get pods -A | |
- name: Setup a minikube docker env | |
run: minikube -p minikube docker-env | grep "export" | sed 's/export //' | sed 's/"//g' >> $GITHUB_ENV | |
- name: Uninstalling GHA kustomize | |
run: | | |
# hack for uninstalling kustomize from GHA | |
mv /usr/local/bin/kustomize /usr/local/bin/ghakustomize | |
make kustomize | |
mv ./bin/kustomize /usr/local/bin/kustomize | |
kustomize version | |
shell: bash | |
- name: Check code format and generate manifests | |
run: | | |
make manifests generate fmt vet | |
shell: bash | |
- name: Deploy pulp-operator to K8s | |
run: | | |
make local | |
kubectl get namespace | |
kubectl config set-context --current --namespace=pulp-operator-system | |
kubectl apply -f .ci/assets/kubernetes/pulp-admin-password.secret.yaml | |
kubectl apply -f config/samples/k8s_versions_ci.yaml | |
shell: bash | |
- name: Check and wait pulp-operator deploy | |
run: kubectl wait --for condition=Pulp-Operator-Finished-Execution pulp/example-pulp --timeout=900s | |
shell: bash | |
- name: Test all components | |
run: | | |
export INGRESS_TYPE=nodeport | |
.ci/scripts/pulp_tests.sh -m | |
shell: bash | |
env: | |
PY_COLORS: '1' | |
- name: Logs | |
if: always() | |
run: .github/workflows/scripts/show_logs.sh | |
kind: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- K8S_VERSION: v1.29.0 | |
- K8S_VERSION: v1.28.0 | |
- K8S_VERSION: v1.27.0 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python 3.8 | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.8' | |
- name: Setup Go environment | |
uses: actions/setup-go@v5 | |
with: | |
go-version-file: 'go.mod' | |
cache: true | |
- name: Install httpie | |
run: | | |
echo ::group::HTTPIE | |
sudo apt-get update -yq | |
sudo -E apt-get -yq --no-install-suggests --no-install-recommends install httpie | |
echo ::endgroup:: | |
echo "HTTPIE_CONFIG_DIR=$GITHUB_WORKSPACE/.ci/assets/httpie/" >> $GITHUB_ENV | |
echo "CI_TEST=true" >> $GITHUB_ENV | |
echo "TEST=pulp" >> $GITHUB_ENV | |
echo "COMPONENT_TYPE=${{ matrix.COMPONENT_TYPE }}" >> $GITHUB_ENV | |
shell: bash | |
- name: Updating registries configuration | |
run: | | |
if [ -f "/etc/docker/daemon.json" ] | |
then | |
echo "INFO: | |
Updating docker configuration | |
" | |
echo "$(cat /etc/docker/daemon.json | jq -s '.[0] + { | |
"insecure-registries" : ["ingress.local","nodeport.local:5001","nodeport.local:30000"] | |
}')" | sudo tee /etc/docker/daemon.json | |
sudo service docker restart || true | |
fi | |
if [ -f "/etc/containers/registries.conf" ] | |
then | |
echo "INFO: | |
Updating registries configuration | |
" | |
echo "[registries.insecure] | |
registries = ['ingress.local','nodeport.local:5001','nodeport.local:30000'] | |
" | sudo tee -a /etc/containers/registries.conf | |
fi | |
shell: bash | |
- name: Install kind | |
run: | | |
.ci/scripts/kind_with_registry.sh ${{ matrix.K8S_VERSION }} | |
echo "Kubernetes version:" | |
kubectl version -ojson|jq .serverVersion | |
kubectl wait --for=condition=Ready node/kind-control-plane | |
shell: bash | |
- name: Uninstalling GHA kustomize | |
run: | | |
# hack for uninstalling kustomize from GHA | |
mv /usr/local/bin/kustomize /usr/local/bin/ghakustomize | |
make kustomize | |
mv ./bin/kustomize /usr/local/bin/kustomize | |
kustomize version | |
shell: bash | |
- name: Check code format and generate manifests | |
run: | | |
make manifests generate fmt vet | |
shell: bash | |
- name: Prepare Object Storage | |
run: | | |
.ci/scripts/prepare-object-storage.sh | |
shell: bash | |
- name: Deploy pulp-operator to K8s | |
run: | | |
make local | |
kubectl get namespace | |
kubectl config set-context --current --namespace=pulp-operator-system | |
kubectl apply -f .ci/assets/kubernetes/pulp-admin-password.secret.yaml | |
kubectl apply -f config/samples/k8s_versions_ci.yaml | |
shell: bash | |
- name: Check and wait pulp-operator deploy | |
run: kubectl wait --for condition=Pulp-Operator-Finished-Execution pulp/example-pulp --timeout=900s | |
shell: bash | |
- name: Test all components | |
run: | | |
export INGRESS_TYPE=nodeport | |
.ci/scripts/pulp_tests.sh -k | |
shell: bash | |
env: | |
PY_COLORS: '1' | |
- name: Logs | |
if: always() | |
run: | | |
.github/workflows/scripts/show_logs.sh -k | |
shell: bash | |
eks: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
#- K8S_VERSION: 1.29 | |
- K8S_VERSION: 1.28 | |
- K8S_VERSION: 1.27 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python 3.8 | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.8' | |
- name: Setup Go environment | |
uses: actions/setup-go@v5 | |
with: | |
go-version-file: 'go.mod' | |
cache: true | |
- name: Install httpie | |
run: | | |
echo ::group::HTTPIE | |
sudo apt-get update -yq | |
sudo -E apt-get -yq --no-install-suggests --no-install-recommends install httpie | |
echo ::endgroup:: | |
echo "HTTPIE_CONFIG_DIR=$GITHUB_WORKSPACE/.ci/assets/httpie/" >> $GITHUB_ENV | |
echo "CI_TEST=true" >> $GITHUB_ENV | |
echo "TEST=pulp" >> $GITHUB_ENV | |
shell: bash | |
- name: Updating registries configuration | |
run: | | |
if [ -f "/etc/docker/daemon.json" ] | |
then | |
echo "INFO: | |
Updating docker configuration | |
" | |
echo "$(cat /etc/docker/daemon.json | jq -s '.[0] + { | |
"insecure-registries" : ["ingress.local","nodeport.local:30000"] | |
}')" | sudo tee /etc/docker/daemon.json | |
sudo service docker restart || true | |
fi | |
if [ -f "/etc/containers/registries.conf" ] | |
then | |
echo "INFO: | |
Updating registries configuration | |
" | |
echo "[registries.insecure] | |
registries = ['ingress.local','nodeport.local:30000'] | |
" | sudo tee -a /etc/containers/registries.conf | |
fi | |
shell: bash | |
- name: Uninstalling GHA kustomize | |
run: | | |
# hack for uninstalling kustomize from GHA | |
mv /usr/local/bin/kustomize /usr/local/bin/ghakustomize | |
make kustomize | |
mv ./bin/kustomize /usr/local/bin/kustomize | |
kustomize version | |
shell: bash | |
- name: Install eksctl | |
run: | | |
curl "https://github.com/eksctl-io/eksctl/releases/latest/download/eksctl_$(uname -s)_amd64.tar.gz" --silent --location | tar xz -C /tmp | |
sudo install -m 0755 /tmp/eksctl /usr/local/bin/eksctl | |
shell: bash | |
- name: Install yq | |
run: | | |
VERSION=v4.40.5 | |
BINARY=yq_linux_amd64 | |
wget https://github.com/mikefarah/yq/releases/download/${VERSION}/${BINARY}.tar.gz -O - | tar xz && sudo mv ${BINARY} /usr/bin/yq | |
shell: bash | |
- name: Install eksctl-anywhere | |
run: | | |
RELEASE_VERSION=v0.18.3 | |
EKS_ANYWHERE_TARBALL_URL=$(curl https://anywhere-assets.eks.amazonaws.com/releases/eks-a/manifest.yaml --silent --location | yq ".spec.releases[] | select(.version==\"$RELEASE_VERSION\").eksABinary.$(uname -s | tr A-Z a-z).uri") | |
curl $EKS_ANYWHERE_TARBALL_URL --silent --location | tar xz ./eksctl-anywhere | |
sudo install -m 0755 ./eksctl-anywhere /usr/local/bin/eksctl-anywhere | |
shell: bash | |
- name: Install kubectl | |
run: | | |
export OS="$(uname -s | tr A-Z a-z)" ARCH=$(test "$(uname -m)" = 'x86_64' && echo 'amd64' || echo 'arm64') | |
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/${OS}/${ARCH}/kubectl" | |
sudo install -m 0755 ./kubectl /usr/local/bin/kubectl | |
shell: bash | |
- name: Deploy eks-a | |
run: | | |
CLUSTER_NAME=mgmt | |
kustomize build config/eks-anywhere/eks/${{ matrix.K8s_VERSION }} > $CLUSTER_NAME.yaml | |
sudo eksctl anywhere create cluster -f $CLUSTER_NAME.yaml | |
sudo chown -R $(id -u) mgmt/ | |
mkdir ~/.kube | |
cp ${PWD}/${CLUSTER_NAME}/${CLUSTER_NAME}-eks-a-cluster.kubeconfig ~/.kube/config | |
kubectl version -ojson|jq .serverVersion | |
kubectl get pods -A | |
# this folder was breaking kustomize execution | |
sudo rm -rf eksa-cli-logs/ | |
shell: bash | |
- name: Check code format and generate manifests | |
run: | | |
make manifests generate fmt vet | |
shell: bash | |
- name: Deploy localpath StorageClass | |
run: | | |
kustomize build config/eks-anywhere/localpath-sc/ | kubectl apply -f- | |
shell: bash | |
- name: Deploy pulp-operator to K8s | |
run: | | |
make local | |
kubectl get namespace | |
kubectl config set-context --current --namespace=pulp-operator-system | |
kubectl apply -f .ci/assets/kubernetes/pulp-admin-password.secret.yaml | |
kubectl apply -f config/samples/k8s_versions_ci.yaml | |
shell: bash | |
- name: Check and wait pulp-operator deploy | |
run: kubectl wait --for condition=Pulp-Operator-Finished-Execution pulp/example-pulp --timeout=900s | |
- name: Test all components | |
run: | | |
export INGRESS_TYPE=nodeport | |
.ci/scripts/pulp_tests.sh --eks | |
shell: bash | |
env: | |
PY_COLORS: '1' | |
- name: Logs | |
if: always() | |
run: .github/workflows/scripts/show_logs.sh --eks |