diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml index cf0be43..819d4bc 100644 --- a/.github/workflows/main.yaml +++ b/.github/workflows/main.yaml @@ -80,6 +80,12 @@ jobs: mv /opt/rancher/hauler/harbor/rancher-airgap-harbor.yaml hauler/harbor/rancher-airgap-harbor.yaml pwd && ls -la hauler/harbor + - name: Build KubeVip + run: | + sh hauler/scripts/kubevip/hauler-kubevip.sh + mv /opt/rancher/hauler/kubevip/rancher-airgap-kubevip.yaml hauler/kubevip/rancher-airgap-kubevip.yaml + pwd && ls -la hauler/kubevip + - name: Commit and Push Repository continue-on-error: true run: | @@ -188,6 +194,14 @@ jobs: hauler store info ls -lh && rm -rf store harbor.tar.zst + - name: Test/Lint KubeVip + run: | + cd hauler/kubevip + hauler store sync -f rancher-airgap-kubevip.yaml --platform linux/amd64 + hauler store save -f kubevip.tar.zst + hauler store info + ls -lh && rm -rf store kubevip.tar.zst + rancher-airgap-release: name: Rancher Airgap - Release Job runs-on: [self-hosted, linux, X64, general] @@ -206,7 +220,7 @@ jobs: - name: Create Release Notes run: | - echo -e "# Rancher Airgap Release ${GITHUB_REF##*/}\nWe are excited about this latest release of Rancher Airgap! Please review all of the releases notes below and always ensure to download the correct assets. Please utilize GitHub Issues, Forks, and Pull Requests to submit any issues, updates, or fixes! Thank you.\n\nThese Release Notes were generated automatically by [github-actions](https://github.com/apps/github-actions).\n\n## Upgrade Steps\n* No upgrade steps for this release.\n\n## Breaking Changes\n* No breaking changes for this release.\n\n## Features and Improvements\n* No features or improvements for this release.\n\n## Bug Fixes and Additional Notes\n* No bug fixes or additional notes for this release.\n\n## Release Assets for the Rancher Airgap\n\n### Hauler (by Rancher Government Solutions)\n* **Hauler Manifest ->** [rancher-airgap-hauler.yaml](https://github.com/zackbradys/rancher-airgap/blob/${GITHUB_REF##*/}/hauler/hauler/rancher-airgap-hauler.yaml)\n* \`curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/${GITHUB_REF##*/}/hauler/hauler/rancher-airgap-hauler.yaml\`\n\n### Rancher Kubernetes Engine 2 (by Rancher)\n* **Hauler Manifest ->** [rancher-airgap-rke2.yaml](https://github.com/zackbradys/rancher-airgap/blob/${GITHUB_REF##*/}/hauler/rke2/rancher-airgap-rke2.yaml)\n* \`curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/${GITHUB_REF##*/}/hauler/rke2/rancher-airgap-rke2.yaml\`\n\n### Rancher Multi-Cluster-Manager (by Rancher)\n* **Hauler Manifest ->** [rancher-airgap-rancher.yaml](https://github.com/zackbradys/rancher-airgap/blob/${GITHUB_REF##*/}/hauler/rancher/rancher-airgap-rancher.yaml)\n* \`curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/${GITHUB_REF##*/}/hauler/rancher/rancher-airgap-rancher.yaml\`\n* **(Minimal) Hauler Manifest ->** [rancher-airgap-rancher-minimal.yaml](https://github.com/zackbradys/rancher-airgap/blob/${GITHUB_REF##*/}/hauler/rancher/rancher-airgap-rancher-minimal.yaml)\n* \`curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/${GITHUB_REF##*/}/hauler/rancher/rancher-airgap-rancher-minimal.yaml\`\n\n### Rancher Longhorn (by Rancher)\n* **Hauler Manifest ->** [rancher-airgap-longhorn.yaml](https://github.com/zackbradys/rancher-airgap/blob/${GITHUB_REF##*/}/hauler/longhorn/rancher-airgap-longhorn.yaml)\n* \`curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/${GITHUB_REF##*/}/hauler/longhorn/rancher-airgap-longhorn.yaml\`\n\n### Rancher NeuVector (by Rancher)\n* **Hauler Manifest ->** [rancher-airgap-neuvector.yaml](https://github.com/zackbradys/rancher-airgap/blob/${GITHUB_REF##*/}/hauler/neuvector/rancher-airgap-neuvector.yaml)\n* \`curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/${GITHUB_REF##*/}/hauler/neuvector/rancher-airgap-neuvector.yaml\`\n\n### Rancher Harvester (by Rancher)\n* **Hauler Manifest ->** [rancher-airgap-harvester.yaml](https://github.com/zackbradys/rancher-airgap/blob/${GITHUB_REF##*/}/hauler/harvester/rancher-airgap-harvester.yaml)\n* \`curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/${GITHUB_REF##*/}/hauler/harvester/rancher-airgap-harvester.yaml\`\n\n### Harbor (by the CNCF)\n* **Hauler Manifest ->** [rancher-airgap-harbor.yaml](https://github.com/zackbradys/rancher-airgap/blob/${GITHUB_REF##*/}/hauler/harbor/rancher-airgap-harbor.yaml)\n* \`curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/${GITHUB_REF##*/}/hauler/harbor/rancher-airgap-harbor.yaml\`\n\n### Helm (by the CNCF)\n* **Hauler Manifest ->** [rancher-airgap-helm.yaml](https://github.com/zackbradys/rancher-airgap/blob/${GITHUB_REF##*/}/hauler/helm/rancher-airgap-helm.yaml)\n* \`curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/${GITHUB_REF##*/}/hauler/helm/rancher-airgap-helm.yaml\`\n\n### Cosign (by Sigstore)\n* **Hauler Manifest ->** [rancher-airgap-cosign.yaml](https://github.com/zackbradys/rancher-airgap/blob/${GITHUB_REF##*/}/hauler/cosign/rancher-airgap-cosign.yaml)\n* \`curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/${GITHUB_REF##*/}/hauler/cosign/rancher-airgap-cosign.yaml\`" > RELEASE-NOTES.MD + echo -e "# Rancher Airgap Release ${GITHUB_REF##*/}\nWe are excited about this latest release of Rancher Airgap! Please review all of the releases notes below and always ensure to download the correct assets. Please utilize GitHub Issues, Forks, and Pull Requests to submit any issues, updates, or fixes! Thank you.\n\nThese Release Notes were generated automatically by [github-actions](https://github.com/apps/github-actions).\n\n## Upgrade Steps\n* No upgrade steps for this release.\n\n## Breaking Changes\n* No breaking changes for this release.\n\n## Features and Improvements\n* No features or improvements for this release.\n\n## Bug Fixes and Additional Notes\n* No bug fixes or additional notes for this release.\n\n## Release Assets for the Rancher Airgap\n\n### Hauler (by Rancher Government Solutions)\n* **Hauler Manifest ->** [rancher-airgap-hauler.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/hauler/rancher-airgap-hauler.yaml)\n* \`curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/hauler/rancher-airgap-hauler.yaml\`\n\n### Rancher Kubernetes Engine 2 (by Rancher)\n* **Hauler Manifest ->** [rancher-airgap-rke2.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/rke2/rancher-airgap-rke2.yaml)\n* \`curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/rke2/rancher-airgap-rke2.yaml\`\n\n### Rancher Multi-Cluster-Manager (by Rancher)\n* **Hauler Manifest ->** [rancher-airgap-rancher.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/rancher/rancher-airgap-rancher.yaml)\n* \`curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/rancher/rancher-airgap-rancher.yaml\`\n* **(Minimal) Hauler Manifest ->** [rancher-airgap-rancher-minimal.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/rancher/rancher-airgap-rancher-minimal.yaml)\n* \`curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/rancher/rancher-airgap-rancher-minimal.yaml\`\n\n### Rancher Longhorn (by Rancher)\n* **Hauler Manifest ->** [rancher-airgap-longhorn.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/longhorn/rancher-airgap-longhorn.yaml)\n* \`curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/longhorn/rancher-airgap-longhorn.yaml\`\n\n### Rancher NeuVector (by Rancher)\n* **Hauler Manifest ->** [rancher-airgap-neuvector.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/neuvector/rancher-airgap-neuvector.yaml)\n* \`curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/neuvector/rancher-airgap-neuvector.yaml\`\n\n### Rancher Harvester (by Rancher)\n* **Hauler Manifest ->** [rancher-airgap-harvester.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/harvester/rancher-airgap-harvester.yaml)\n* \`curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/harvester/rancher-airgap-harvester.yaml\`\n\n### Helm (by the CNCF)\n* **Hauler Manifest ->** [rancher-airgap-helm.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/helm/rancher-airgap-helm.yaml)\n* \`curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/helm/rancher-airgap-helm.yaml\`\n\n### Cosign (by Sigstore)\n* **Hauler Manifest ->** [rancher-airgap-cosign.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/cosign/rancher-airgap-cosign.yaml)\n* \`curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/cosign/rancher-airgap-cosign.yaml\`\n\n### Harbor (by the CNCF)\n* **Hauler Manifest ->** [rancher-airgap-harbor.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/harbor/rancher-airgap-harbor.yaml)\n* \`curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/harbor/rancher-airgap-harbor.yaml\`\n\n### KubeVip (by the CNCF)\n* **Hauler Manifest ->** [rancher-airgap-kubevip.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/kubevip/rancher-airgap-kubevip.yaml)\n* \`curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/kubevip/rancher-airgap-kubevip.yaml\`" > RELEASE-NOTES.MD echo "Previewing Release Notes" cat RELEASE-NOTES.MD diff --git a/README.md b/README.md index ea475f9..fd94556 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ # Rancher Airgap Guide ### Welcome to the Rancher Airgap Guide + Rancher Airgap is a framework and guide built for collecting, packaging, and distributing the Rancher Product Stack for deployment in disconnected or airgapped environments. We utilize Project [Hauler](https://github.com/rancherfederal/hauler) by [Rancher Government Solutions](https://github.com/rancherfederal) to collect, package, and distribute the assets. `Hauler` simplifies the airgap process, by representing assets as content and collections and allows users to easily fetch, store, package, and distribute with declarative manifests or the command line. In this repositry, we generate these manifests for each of the products. @@ -8,11 +9,13 @@ We utilize Project [Hauler](https://github.com/rancherfederal/hauler) by [Ranche **Review the high level *[example use cases](examples)*!** **High Level Workflow:** + ```bash Collection -> Across the Airgap -> Distribution ``` **Detailed Workflow:** + ```bash fetch -> validate -> save -> | | -> load -> validate -> distribute ``` @@ -20,33 +23,38 @@ fetch -> validate -> save -> | | -> load -> validate -> distribute ## Repository Structure ### Core Components -* [hauler/rke2](hauler/rke2/README.md) - provides the content manifest for Rancher Kubernetes (RKE2) - * currently supports: `RKE2 v1.26.13` -* [hauler/rancher](hauler/rancher/README.md) - provides the content manifest for Cert-Manager - * currently supports: `Cert-Manager v1.14.2` -* [hauler/rancher](hauler/rancher/README.md) - provides the content manifest for Rancher Multi-Cluster Manager - * currently supports: `Rancher v2.8.2` -* [hauler/longhorn](hauler/longhorn/README.md) - provides the content manifest for Rancher Longhorn - * currently supports: `Longhorn v1.6.0` -* [hauler/neuvector](hauler/neuvector/README.md) - provides the content manifest for Rancher NeuVector - * currently supports: `NeuVector v5.3.0` -* [hauler/harvester](hauler/harvester/README.md) - provides the content manifest for Rancher Harvester - * currently supports: `Harvester v1.2.1` + +- [hauler/rke2](hauler/rke2/README.md) - provides the content manifest for Rancher Kubernetes (RKE2) + - currently supports: `RKE2: v1.26.13` +- [hauler/rancher](hauler/rancher/README.md) - provides the content manifest for Cert-Manager + - currently supports: `Cert-Manager: v1.14.2` +- [hauler/rancher](hauler/rancher/README.md) - provides the content manifest for Rancher Multi-Cluster Manager + - currently supports: `Rancher: v2.8.2` +- [hauler/longhorn](hauler/longhorn/README.md) - provides the content manifest for Rancher Longhorn + - currently supports: `Longhorn: v1.6.0` +- [hauler/neuvector](hauler/neuvector/README.md) - provides the content manifest for Rancher NeuVector + - currently supports: `NeuVector: v5.3.0` +- [hauler/harvester](hauler/harvester/README.md) - provides the content manifest for Rancher Harvester + - currently supports: `Harvester: v1.2.1` ### Addons -* [hauler/hauler](hauler/hauler/README.md) - provides the content manifest for Hauler - * currently supports: `Hauler v0.4.4` -* [hauler/helm](hauler/helm/README.md) - provides the content manifest for Helm - * currently supports: `Helm v3.14.0` -* [hauler/cosign](hauler/cosign/README.md) - provides the content manifest for Cosign - * currently supports: `Cosign v2.2.3` -* [hauler/harbor](hauler/harbor/README.md) - provides the content manifest for Harbor - * currently supports: `Harbor v2.9.1` + +- [hauler/hauler](hauler/hauler/README.md) - provides the content manifest for Hauler + - currently supports: `Hauler: v0.4.4` +- [hauler/helm](hauler/helm/README.md) - provides the content manifest for Helm + - currently supports: `Helm: v3.14.0` +- [hauler/cosign](hauler/cosign/README.md) - provides the content manifest for Cosign + - currently supports: `Cosign: v2.2.3` +- [hauler/harbor](hauler/harbor/README.md) - provides the content manifest for Harbor + - currently supports: `Harbor: v2.9.1` +- [hauler/kubevip](hauler/kubevip/README.md) - provides the content manifest for KubeVip + - currently supports: `KubeVip: Latest` **Note:** We are currently planning and working towards supporting every major version of our products. We will continue to update to the latest until we implement previous major verions. ## Hauler Installation + ```bash # https://github.com/rancherfederal/hauler curl -sfL https://get.hauler.dev | bash -``` \ No newline at end of file +``` diff --git a/examples/os-packages-example.md b/examples/os-packages-example.md index 4246061..8e075e9 100644 --- a/examples/os-packages-example.md +++ b/examples/os-packages-example.md @@ -95,4 +95,11 @@ enabled=1 exactarch=0 gpgcheck=0 EOF + +### Disable Default YUM Repos +# useful when simulating airgapped servers +yum-config-manager --disable appstream baseos extras + +### List Available YUM Repos +yum repolist all ``` \ No newline at end of file diff --git a/hauler/cosign/README.md b/hauler/cosign/README.md index 18b7f99..5e16b83 100644 --- a/hauler/cosign/README.md +++ b/hauler/cosign/README.md @@ -1,14 +1,14 @@ -# Cosign +# Cosign (by Sigstore) **Note:** View the [README](https://github.com/zackbradys/rancher-airgap/blob/main/README.md) for the latest versions! ## Collection and Packaging -[hauler/cosign/rancher-airgap-cosign.yaml](https://github.com/zackbradys/rancher-airgap/blob/v2.0.2/hauler/cosign/rancher-airgap-cosign.yaml) - provides the content manifest for all the assets. +[hauler/cosign/rancher-airgap-cosign.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/cosign/rancher-airgap-cosign.yaml) - provides the content manifest for all the assets. ```bash # pull the manifest -curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/v2.0.2/hauler/cosign/rancher-airgap-cosign.yaml +curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/cosign/rancher-airgap-cosign.yaml # sync to the store hauler store sync --files rancher-airgap-rke2.yaml diff --git a/hauler/harbor/README.md b/hauler/harbor/README.md index b0a2d6b..e2722f1 100644 --- a/hauler/harbor/README.md +++ b/hauler/harbor/README.md @@ -1,14 +1,14 @@ -# Harbor +# Harbor (by the CNCF) **Note:** View the [README](https://github.com/zackbradys/rancher-airgap/blob/main/README.md) for the latest versions! ## Collection and Packaging -[hauler/harbor/rancher-airgap-harbor.yaml](https://github.com/zackbradys/rancher-airgap/blob/v2.0.2/hauler/harbor/rancher-airgap-harbor.yaml) - provides the content manifest for all the assets. +[hauler/harbor/rancher-airgap-harbor.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/harbor/rancher-airgap-harbor.yaml) - provides the content manifest for all the assets. ```bash # pull the manifest -curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/v2.0.2/hauler/harbor/rancher-airgap-harbor.yaml +curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/harbor/rancher-airgap-harbor.yaml # sync to the store hauler store sync --files rancher-airgap-harbor.yaml diff --git a/hauler/harvester/README.md b/hauler/harvester/README.md index 4f611c0..ad2ad7d 100644 --- a/hauler/harvester/README.md +++ b/hauler/harvester/README.md @@ -1,14 +1,14 @@ -# Rancher Harvester +# Rancher Harvester (by Rancher) **Note:** View the [README](https://github.com/zackbradys/rancher-airgap/blob/main/README.md) for the latest versions! ## Collection and Packaging -[hauler/harvester/rancher-airgap-harvester.yaml](https://github.com/zackbradys/rancher-airgap/blob/v2.0.2/hauler/harvester/rancher-airgap-harvester.yaml) - provides the content manifest for all the assets. +[hauler/harvester/rancher-airgap-harvester.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/harvester/rancher-airgap-harvester.yaml) - provides the content manifest for all the assets. ```bash # pull the manifest -curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/v2.0.2/hauler/harvester/rancher-airgap-harvester.yaml +curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/harvester/rancher-airgap-harvester.yaml # sync to the store hauler store sync --files rancher-airgap-harvester.yaml diff --git a/hauler/hauler/README.md b/hauler/hauler/README.md index de78f6d..e2e4fc7 100644 --- a/hauler/hauler/README.md +++ b/hauler/hauler/README.md @@ -1,14 +1,14 @@ -# Hauler +# Hauler (by Rancher Government Solutions) **Note:** View the [README](https://github.com/zackbradys/rancher-airgap/blob/main/README.md) for the latest versions! ## Collection and Packaging -[hauler/hauler/rancher-airgap-hauler.yaml](https://github.com/zackbradys/rancher-airgap/blob/v2.0.2/hauler/hauler/rancher-airgap-hauler.yaml) - provides the content manifest for all the assets. +[hauler/hauler/rancher-airgap-hauler.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/hauler/rancher-airgap-hauler.yaml) - provides the content manifest for all the assets. ```bash # pull the manifest -curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/v2.0.2/hauler/hauler/rancher-airgap-hauler.yaml +curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/hauler/rancher-airgap-hauler.yaml # sync to the store hauler store sync --files rancher-airgap-hauler.yaml diff --git a/hauler/helm/README.md b/hauler/helm/README.md index f090568..ef534eb 100644 --- a/hauler/helm/README.md +++ b/hauler/helm/README.md @@ -1,14 +1,14 @@ -# Helm +# Helm (by the CNCF) **Note:** View the [README](https://github.com/zackbradys/rancher-airgap/blob/main/README.md) for the latest versions! ## Collection and Packaging -[hauler/helm/rancher-airgap-helm.yaml](https://github.com/zackbradys/rancher-airgap/blob/v2.0.2/hauler/helm/rancher-airgap-helm.yaml) - provides the content manifest for all the assets. +[hauler/helm/rancher-airgap-helm.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/helm/rancher-airgap-helm.yaml) - provides the content manifest for all the assets. ```bash # pull the manifest -curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/v2.0.2/hauler/helm/rancher-airgap-helm.yaml +curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/helm/rancher-airgap-helm.yaml # sync to the store hauler store sync --files rancher-airgap-helm.yaml diff --git a/hauler/kubevip/README.md b/hauler/kubevip/README.md new file mode 100644 index 0000000..f84f617 --- /dev/null +++ b/hauler/kubevip/README.md @@ -0,0 +1,30 @@ +# KubeVip (by the CNCF) + +**Note:** View the [README](https://github.com/zackbradys/rancher-airgap/blob/main/README.md) for the latest versions! + +## Collection and Packaging + +[hauler/kubevip/rancher-airgap-kubevip.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/kubevip/rancher-airgap-kubevip.yaml) - provides the content manifest for all the assets. + +```bash +# pull the manifest +curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/kubevip/rancher-airgap-kubevip.yaml + +# sync to the store +hauler store sync --files rancher-airgap-kubevip.yaml + +# save to tarball +hauler store save --filename rancher-airgap-kubevip.tar.zst +``` + +## Across the Airgap + +```bash +# coming soon +``` + +## Loading and Distribution + +```bash +# coming soon +``` \ No newline at end of file diff --git a/hauler/kubevip/rancher-airgap-kubevip.yaml b/hauler/kubevip/rancher-airgap-kubevip.yaml new file mode 100644 index 0000000..ee21793 --- /dev/null +++ b/hauler/kubevip/rancher-airgap-kubevip.yaml @@ -0,0 +1,18 @@ +apiVersion: content.hauler.cattle.io/v1alpha1 +kind: Images +metadata: + name: rancher-airgap-images-kubevip +spec: + images: + - name: ghcr.io/kube-vip/kube-vip:v0.5.11 +--- +apiVersion: content.hauler.cattle.io/v1alpha1 +kind: Files +metadata: + name: rancher-airgap-files-kubevip +spec: + files: + - path: https://kube-vip.io/k3s + name: kubevip-daemonset-manifest.yaml + - path: https://kube-vip.io/manifests/rbac.yaml + name: kubevip-rbac-manifest.yaml diff --git a/hauler/longhorn/README.md b/hauler/longhorn/README.md index 319b20c..813d048 100644 --- a/hauler/longhorn/README.md +++ b/hauler/longhorn/README.md @@ -1,14 +1,14 @@ -# Rancher Longhorn +# Rancher Longhorn (by Rancher) **Note:** View the [README](https://github.com/zackbradys/rancher-airgap/blob/main/README.md) for the latest versions! ## Collection and Packaging -[hauler/longhorn/rancher-airgap-longhorn.yaml](https://github.com/zackbradys/rancher-airgap/blob/v2.0.2/hauler/longhorn/rancher-airgap-longhorn.yaml) - provides the content manifest for all the assets. +[hauler/longhorn/rancher-airgap-longhorn.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/longhorn/rancher-airgap-longhorn.yaml) - provides the content manifest for all the assets. ```bash # pull the manifest -curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/v2.0.2/hauler/longhorn/rancher-airgap-longhorn.yaml +curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/longhorn/rancher-airgap-longhorn.yaml # sync to the store hauler store sync --files rancher-airgap-longhorn.yaml diff --git a/hauler/neuvector/README.md b/hauler/neuvector/README.md index 7ab1693..86ad91d 100644 --- a/hauler/neuvector/README.md +++ b/hauler/neuvector/README.md @@ -1,14 +1,14 @@ -# Rancher NeuVector +# Rancher NeuVector (by Rancher) **Note:** View the [README](https://github.com/zackbradys/rancher-airgap/blob/main/README.md) for the latest versions! ## Collection and Packaging -[hauler/neuvector/rancher-airgap-neuvector.yaml](https://github.com/zackbradys/rancher-airgap/blob/v2.0.2/hauler/neuvector/rancher-airgap-neuvector.yaml) - provides the content manifest for all the assets. +[hauler/neuvector/rancher-airgap-neuvector.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/neuvector/rancher-airgap-neuvector.yaml) - provides the content manifest for all the assets. ```bash # pull the manifest -curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/v2.0.2/hauler/neuvector/rancher-airgap-neuvector.yaml +curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/neuvector/rancher-airgap-neuvector.yaml # sync to the store hauler store sync --files rancher-airgap-neuvector.yaml diff --git a/hauler/rancher/README.md b/hauler/rancher/README.md index 34df1a3..0bb9f44 100644 --- a/hauler/rancher/README.md +++ b/hauler/rancher/README.md @@ -1,14 +1,14 @@ -# Rancher Multi-Cluster Manager +# Rancher Multi-Cluster-Manager (by Rancher) **Note:** View the [README](https://github.com/zackbradys/rancher-airgap/blob/main/README.md) for the latest versions! ## Collection and Packaging -[hauler/rancher/rancher-airgap-rancher.yaml](https://github.com/zackbradys/rancher-airgap/blob/v2.0.2/hauler/rancher/rancher-airgap-rancher.yaml) - provides the content manifest for all the assets. +[hauler/rancher/rancher-airgap-rancher.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/rancher/rancher-airgap-rancher.yaml) - provides the content manifest for all the assets. ```yaml # pull the manifest -curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/v2.0.2/hauler/rancher/rancher-airgap-rancher.yaml +curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/rancher/rancher-airgap-rancher.yaml # sync to the store hauler store sync --files rancher-airgap-rancher.yaml @@ -17,12 +17,12 @@ hauler store sync --files rancher-airgap-rancher.yaml hauler store save --filename rancher-airgap-rancher.tar.zst ``` -[hauler/rancher/rancher-airgap-rancher-minimal.yaml](https://github.com/zackbradys/rancher-airgap/blob/v2.0.2/hauler/rancher/rancher-airgap-rancher-minimal.yaml) - provides the content manifest for the minimal assets. +[hauler/rancher/rancher-airgap-rancher-minimal.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/rancher/rancher-airgap-rancher-minimal.yaml) - provides the content manifest for the minimal assets. ```bash # pull the manifest -curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/v2.0.2/hauler/rancher/rancher-airgap-rancher-minimal.yaml +curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/rancher/rancher-airgap-rancher-minimal.yaml # sync to the store hauler store sync --files rancher-airgap-rancher-minimal.yaml diff --git a/hauler/rke2/README.md b/hauler/rke2/README.md index 592ff25..d9d3ae4 100644 --- a/hauler/rke2/README.md +++ b/hauler/rke2/README.md @@ -1,14 +1,14 @@ -# Rancher Kubernetes (RKE2) +# Rancher Kubernetes Engine 2 (by Rancher) **Note:** View the [README](https://github.com/zackbradys/rancher-airgap/blob/main/README.md) for the latest versions! ## Collection and Packaging -[hauler/rke2/rancher-airgap-rke2.yaml](https://github.com/zackbradys/rancher-airgap/blob/v2.0.2/hauler/rke2/rancher-airgap-rke2.yaml) - provides the content manifest for all the assets. +[hauler/rke2/rancher-airgap-rke2.yaml](https://github.com/zackbradys/rancher-airgap/blob/main/hauler/rke2/rancher-airgap-rke2.yaml) - provides the content manifest for all the assets. ```bash # pull the manifest -curl -#OL https://raw.githubusercontent.com/zackbradys/rancher-airgap/v2.0.2/hauler/rke2/rancher-airgap-rke2.yaml +curl -sfOL https://raw.githubusercontent.com/zackbradys/rancher-airgap/main/hauler/rke2/rancher-airgap-rke2.yaml # sync to the store hauler store sync --files rancher-airgap-rke2.yaml diff --git a/hauler/scripts/kubevip/hauler-kubevip.sh b/hauler/scripts/kubevip/hauler-kubevip.sh index aa4df90..e587103 100644 --- a/hauler/scripts/kubevip/hauler-kubevip.sh +++ b/hauler/scripts/kubevip/hauler-kubevip.sh @@ -6,7 +6,7 @@ cd /opt/rancher/hauler/kubevip kubevipImage=$(curl -sL kube-vip.io/k3s | grep -o 'image:.*' | sed 's/image: / - name: /') ### Create Hauler Manifest -cat << EOF >> /opt/rancher/hauler/harbor/rancher-airgap-kubevip.yaml +cat << EOF >> /opt/rancher/hauler/kubevip/rancher-airgap-kubevip.yaml apiVersion: content.hauler.cattle.io/v1alpha1 kind: Images metadata: diff --git a/hauler/scripts/rke2/hauler-rke2.sh b/hauler/scripts/rke2/hauler-rke2.sh index 11d5da5..610924b 100644 --- a/hauler/scripts/rke2/hauler-rke2.sh +++ b/hauler/scripts/rke2/hauler-rke2.sh @@ -1,5 +1,6 @@ ### Set Variables export vRKE2=1.26.13 +export vRKE2SELinux=0.17 ### Setup Working Directory rm -rf /opt/rancher/hauler/rke2 @@ -32,12 +33,12 @@ spec: name: rke2.linux-amd64 - path: https://raw.githubusercontent.com/rancher/rke2/master/install.sh name: install.sh - - path: https://github.com/rancher/rke2-selinux/releases/download/v0.17.stable.1/rke2-selinux-0.17-1.el9.noarch.rpm - name: rke2-selinux-0.17-1.el9.noarch.rpm - - path: https://github.com/rancher/rke2-selinux/releases/download/v0.17.stable.1/rke2-selinux-0.17-1.el8.noarch.rpm - name: rke2-selinux-0.17-1.el8.noarch.rpm - - path: https://github.com/rancher/rke2-selinux/releases/download/v0.17.stable.1/rke2-selinux-0.17-1.el7.noarch.rpm - name: rke2-selinux-0.17-1.el7.noarch.rpm + - path: https://github.com/rancher/rke2-selinux/releases/download/v${RKE2SELinux}.stable.1/rke2-selinux-${RKE2SELinux}-1.el9.noarch.rpm + name: rke2-selinux-${RKE2SELinux}-1.el9.noarch.rpm + - path: https://github.com/rancher/rke2-selinux/releases/download/v${RKE2SELinux}.stable.1/rke2-selinux-${RKE2SELinux}-1.el8.noarch.rpm + name: rke2-selinux-${RKE2SELinux}-1.el8.noarch.rpm + - path: https://github.com/rancher/rke2-selinux/releases/download/v${RKE2SELinux}.stable.1/rke2-selinux-${RKE2SELinux}-1.el7.noarch.rpm + name: rke2-selinux-${RKE2SELinux}-1.el7.noarch.rpm - path: https://github.com/rancher/rke2-packaging/releases/download/v${vRKE2}%2Brke2r1.stable.0/rke2-common-${vRKE2}.rke2r1-0.el9.x86_64.rpm name: rke2-common-${vRKE2}.rke2r1-0.el9.x86_64.rpm - path: https://github.com/rancher/rke2-packaging/releases/download/v${vRKE2}%2Brke2r1.stable.0/rke2-common-${vRKE2}.rke2r1-0.el8.x86_64.rpm