Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: swissgrc/docker-azure-pipelines-renovate
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 37.121.0
Choose a base ref
...
head repository: swissgrc/docker-azure-pipelines-renovate
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: develop
Choose a head ref
Loading
Showing with 60 additions and 29 deletions.
  1. +1 −1 .github/CODEOWNERS
  2. +7 −0 .github/renovate.json
  3. +46 −27 Dockerfile
  4. +6 −1 README.md
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# These owners will be the default owners for everything in the repo and
# will be requested for review when someone opens a pull request.
* @swissgrc/platform
* @swissgrc/dev-infra
7 changes: 7 additions & 0 deletions .github/renovate.json
Original file line number Diff line number Diff line change
@@ -2,5 +2,12 @@
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"github>swissgrc/renovate-presets:docker"
],
"packageRules": [
{
"matchDepNames": [ "ghcr.io/swissgrc/azure-pipelines-node" ],
"description": "No Node Major Updates",
"extends": [ ":disableMajorUpdates" ]
}
]
}
73 changes: 46 additions & 27 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,25 @@
FROM node:21.5.0-bookworm-slim
FROM ghcr.io/swissgrc/azure-pipelines-node:22.14.0-net9 AS base

FROM base AS build

# Make sure to fail due to an error at any stage in shell pipes
SHELL ["/bin/bash", "-o", "pipefail", "-c"]

# renovate: datasource=repology depName=debian_12/curl versioning=deb
ENV CURL_VERSION=7.88.1-10+deb12u8

RUN apt-get update -y && \
# Install necessary dependencies
apt-get install -y --no-install-recommends curl=${CURL_VERSION}

# Install the Flux CLI

# renovate: datasource=github-releases depName=fluxcd/flux2 extractVersion=^v(?<version>.*)$
ENV FLUX_VERSION=2.5.0

RUN curl -s https://fluxcd.io/install.sh | FLUX_VERSION=${FLUX_VERSION} bash

FROM base AS final

LABEL org.opencontainers.image.vendor="Swiss GRC AG"
LABEL org.opencontainers.image.authors="Swiss GRC AG <opensource@swissgrc.com>"
@@ -8,38 +29,36 @@ LABEL org.opencontainers.image.documentation="https://github.com/swissgrc/docker
# Make sure to fail due to an error at any stage in shell pipes
SHELL ["/bin/bash", "-o", "pipefail", "-c"]

# Prerequisites

# renovate: datasource=repology depName=debian_12/ca-certificates versioning=loose
ENV CACERTIFICATES_VERSION=20230311
WORKDIR /

# Ca-Certificates is required for connection to Azure DevOps
RUN apt-get update -y && \
apt-get install -y --no-install-recommends ca-certificates=${CACERTIFICATES_VERSION} && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
# Smoke test prerequisites
RUN git version && \
dotnet --version

# Install Renovate

# renovate: datasource=npm depName=renovate
ENV RENOVATE_VERSION=37.121.0
ENV RENOVATE_VERSION=39.176.4

# We need to run scripts here to have RE2 installed
RUN npm install -g renovate@${RENOVATE_VERSION} && \
npm cache clean --force && \
# Smoke test
renovate --version

# Install Git

# renovate: datasource=repology depName=debian_12/git versioning=loose
ENV GIT_VERSION=1:2.39.2-1.1

# Install from backports since renovate requires at least git 2.33.0
RUN apt-get update && \
apt-get install -y --no-install-recommends git=${GIT_VERSION} && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* && \
# Configure Git
git config --global user.email 'bot@renovateapp.com' && \
npm cache clean --force && \
# Smoke test
renovate --version

# Install Flux CLI

# Copy Flux CLI from build stage
COPY --from=build /usr/local/bin/flux /usr/local/bin/flux

# Smoke test
RUN flux --version

# Configure Git

RUN git config --global user.email 'bot@renovateapp.com' && \
git config --global user.name 'Renovate Bot'

# Clean up
RUN apt-get clean && \
rm -rf /var/lib/apt/lists/* /var/cache/apt/archives/*
7 changes: 6 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -26,7 +26,12 @@ The following example shows the container used for running Renovate:
target: swissgrc/azure-pipelines-renovate:latest
```
### Tags
## Included Software
- [swissgrc/azure-pipelines-node:22-net9](https://github.com/swissgrc/docker-azure-pipelines-node22-net9) as base image
- Renovate
- Flux
## Tags
<!-- markdownlint-disable MD013 -->
| Tag | Description | Size |