Compare commits

...
2 Commits
Author SHA1 Message Date
jdesouza e03108afdd Fixed issue 2026-07-02 14:38:36 -03:00
jdesouza 66eae43227 Add Renovate to Polaris 2026-07-02 12:15:47 -03:00
4 changed files with 182 additions and 22 deletions
+21 -2
View File
@@ -211,8 +211,27 @@ jobs:
name: Tag and save amd64 image for Kind
command: |
set -euo pipefail
docker tag "us-docker.pkg.dev/fairwinds-ops/oss/polaris:${CIRCLE_SHA1}-amd64" "us-docker.pkg.dev/fairwinds-ops/oss/polaris:${CIRCLE_SHA1}"
docker save "us-docker.pkg.dev/fairwinds-ops/oss/polaris:${CIRCLE_SHA1}" -o "/tmp/workspace/docker_save/polaris_${CIRCLE_SHA1}.tar"
AMD64_IMAGE="us-docker.pkg.dev/fairwinds-ops/oss/polaris:${CIRCLE_SHA1}-amd64"
KIND_IMAGE="us-docker.pkg.dev/fairwinds-ops/oss/polaris:${CIRCLE_SHA1}"
if docker image inspect "${AMD64_IMAGE}" >/dev/null 2>&1; then
docker tag "${AMD64_IMAGE}" "${KIND_IMAGE}"
elif docker image inspect "${KIND_IMAGE}" >/dev/null 2>&1; then
echo "Using existing ${KIND_IMAGE}"
else
echo "Goreleaser buildx did not load ${AMD64_IMAGE}; building ${KIND_IMAGE} from dist/"
POLARIS_BIN="$(find dist -type f -name polaris -path '*linux_amd64*' | head -1)"
if [ -z "${POLARIS_BIN}" ]; then
echo "Could not find linux amd64 binary in dist/"
find dist -type f || true
docker images | grep -E 'polaris|REPOSITORY' || true
exit 1
fi
cp "${POLARIS_BIN}" ./polaris
docker build --platform linux/amd64 -t "${KIND_IMAGE}" .
fi
docker save "${KIND_IMAGE}" -o "/tmp/workspace/docker_save/polaris_${CIRCLE_SHA1}.tar"
- persist_to_workspace:
root: /tmp/workspace
paths:
-20
View File
@@ -1,20 +0,0 @@
## DO NOT EDIT - Managed by Terraform
version: 2
updates:
- package-ecosystem: "docker"
directory: "/"
schedule:
interval: "weekly"
- package-ecosystem: "npm"
directory: "/docs"
schedule:
interval: "weekly"
open-pull-requests-limit: 0
ignore:
- dependency-name: "*"
- package-ecosystem: "gomod"
directory: "/"
schedule:
interval: "weekly"
+1
View File
@@ -84,6 +84,7 @@ dockers:
dockerfile: Dockerfile
build_flag_templates:
- "--platform=linux/amd64"
- "{{ if .IsSnapshot }}--load{{ end }}"
- image_templates:
- "us-docker.pkg.dev/fairwinds-ops/oss/polaris:{{ .FullCommit }}-arm64v8"
- "us-docker.pkg.dev/fairwinds-ops/oss/polaris:{{ .Tag }}-arm64v8"
+160
View File
@@ -0,0 +1,160 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:recommended",
":dependencyDashboard"
],
"labels": ["dependencies"],
"assignees": ["jdesouza", "vitorvezani"],
"prConcurrentLimit": 10,
"branchConcurrentLimit": 10,
"enabledManagers": ["gomod", "dockerfile", "circleci", "custom.regex"],
"packageRules": [
{
"description": "Group all non-major (minor + patch) updates into a single PR",
"matchUpdateTypes": ["minor", "patch", "digest", "lockFileMaintenance"],
"groupName": "all non-major dependencies",
"groupSlug": "all-non-major",
"minimumReleaseAge": "7 days"
},
{
"description": "Keep major updates separate and also enforce minimum age",
"matchUpdateTypes": ["major"],
"minimumReleaseAge": "7 days"
},
{
"description": "Disable replace updates",
"matchManagers": ["gomod"],
"matchDepTypes": ["replace"],
"enabled": false
},
{
"description": "Every upgrade: upstream release must be at least 7 days old (applies to all enabled managers)",
"matchManagers": ["gomod", "dockerfile", "circleci", "custom.regex"],
"minimumReleaseAge": "7 days"
},
{
"description": "Keep GoReleaser image in sync across CircleCI executor and docker run",
"groupName": "GoReleaser",
"matchManagers": ["circleci", "custom.regex"],
"matchDepNames": ["goreleaser/goreleaser"]
},
{
"description": "Keep CircleCI cimg/go aligned with go.mod",
"groupName": "Go toolchain",
"matchManagers": ["circleci", "gomod"],
"matchDepNames": ["go", "cimg/go"]
},
{
"description": "Group HashiCorp Vault version bumps (sha256 checksum still needs manual update)",
"groupName": "HashiCorp Vault",
"matchManagers": ["custom.regex"],
"matchDepNames": ["hashicorp/vault"]
},
{
"description": "Group K8s integration test tooling in CircleCI install_k8s",
"groupName": "K8s e2e test tooling",
"matchManagers": ["custom.regex"],
"matchDepNames": [
"kubernetes-sigs/kind",
"kubernetes/kubernetes",
"kindest/node",
"cert-manager/cert-manager"
]
},
{
"description": "jsonpatch/v2 must stay; controller-runtime admission.Patched() uses v2 types",
"matchManagers": ["gomod"],
"matchPackageNames": ["gomodules.xyz/jsonpatch/v2"],
"matchUpdateTypes": ["major"],
"enabled": false
}
],
"minimumReleaseAge": "7 days",
"gomod": {
"enabled": true
},
"postUpdateOptions": ["gomodTidy", "gomodUpdateImportPaths"],
"customManagers": [
{
"description": "GoReleaser image in CircleCI executor and docker run commands",
"customType": "regex",
"managerFilePatterns": ["/(^|/)\\.circleci/config\\.yml$/"],
"matchStrings": [
"goreleaser/goreleaser:v(?<currentValue>[0-9.]+)"
],
"depNameTemplate": "goreleaser/goreleaser",
"datasourceTemplate": "docker",
"autoReplaceStringTemplate": "goreleaser/goreleaser:v{{{newValue}}}"
},
{
"description": "HashiCorp Vault download URL in CircleCI install_vault_alpine",
"customType": "regex",
"managerFilePatterns": ["/(^|/)\\.circleci/config\\.yml$/"],
"matchStrings": [
"https://releases\\.hashicorp\\.com/vault/(?<currentValue>[\\d.]+)/vault_[\\d.]+_linux_amd64\\.zip"
],
"depNameTemplate": "hashicorp/vault",
"datasourceTemplate": "hashicorp-releases",
"autoReplaceStringTemplate": "https://releases.hashicorp.com/vault/{{{newValue}}}/vault_{{{newValue}}}_linux_amd64.zip"
},
{
"description": "HashiCorp Vault archive name in CircleCI install_vault_alpine (sha256 grep line must be updated manually)",
"customType": "regex",
"managerFilePatterns": ["/(^|/)\\.circleci/config\\.yml$/"],
"matchStrings": [
"vault_(?<currentValue>[\\d.]+)_linux_amd64\\.zip"
],
"depNameTemplate": "hashicorp/vault",
"datasourceTemplate": "hashicorp-releases",
"autoReplaceStringTemplate": "vault_{{{newValue}}}_linux_amd64.zip"
},
{
"description": "kind CLI version in CircleCI install_k8s",
"customType": "regex",
"managerFilePatterns": ["/(^|/)\\.circleci/config\\.yml$/"],
"matchStrings": [
"kind/releases/download/v(?<currentValue>[0-9.]+)/kind-linux-amd64"
],
"depNameTemplate": "kubernetes-sigs/kind",
"datasourceTemplate": "github-releases",
"extractVersionTemplate": "^v?(?<version>.*)$",
"autoReplaceStringTemplate": "kind/releases/download/v{{{newValue}}}/kind-linux-amd64"
},
{
"description": "kubectl version in CircleCI install_k8s",
"customType": "regex",
"managerFilePatterns": ["/(^|/)\\.circleci/config\\.yml$/"],
"matchStrings": [
"kubernetes-release/release/v(?<currentValue>[0-9.]+)/bin/linux/amd64/kubectl"
],
"depNameTemplate": "kubernetes/kubernetes",
"datasourceTemplate": "github-releases",
"extractVersionTemplate": "^v?(?<version>.*)$",
"autoReplaceStringTemplate": "kubernetes-release/release/v{{{newValue}}}/bin/linux/amd64/kubectl"
},
{
"description": "kindest/node image in CircleCI install_k8s (sha256 digest must be updated manually)",
"customType": "regex",
"managerFilePatterns": ["/(^|/)\\.circleci/config\\.yml$/"],
"matchStrings": [
"kindest/node:(?<currentValue>v[0-9.]+)@sha256:"
],
"depNameTemplate": "kindest/node",
"datasourceTemplate": "docker",
"autoReplaceStringTemplate": "kindest/node:{{{newValue}}}@sha256:"
},
{
"description": "cert-manager Helm chart version in CircleCI install_k8s",
"customType": "regex",
"managerFilePatterns": ["/(^|/)\\.circleci/config\\.yml$/"],
"matchStrings": [
"jetstack/cert-manager --namespace cert-manager --version v(?<currentValue>[0-9.]+)"
],
"depNameTemplate": "cert-manager/cert-manager",
"datasourceTemplate": "github-releases",
"extractVersionTemplate": "^v?(?<version>.*)$",
"autoReplaceStringTemplate": "jetstack/cert-manager --namespace cert-manager --version v{{{newValue}}}"
}
]
}