From 1cacbe26d0f51d64b786b9ddae41479e6844807f Mon Sep 17 00:00:00 2001 From: Robert Fratto Date: Thu, 3 Jun 2021 13:02:35 -0400 Subject: [PATCH] Prepare for 0.15.0 (#626) * prepare for 0.15.0 - cut changelog - fix date of 0.14.0 release - add force_release.yml back to workflows to perform the release * add missing space --- .github/workflows/force_release.yml | 117 ++++++++++++++++++ CHANGELOG.md | 17 ++- docs/configuration-reference.md | 8 +- docs/getting-started.md | 4 +- docs/migration-guide.md | 2 + production/README.md | 2 +- production/grafanacloud-install.sh | 2 +- production/kubernetes/agent-bare.yaml | 2 +- production/kubernetes/agent-loki.yaml | 2 +- production/kubernetes/agent-sigv4.yaml | 4 +- production/kubernetes/agent-tempo.yaml | 2 +- production/kubernetes/agent.yaml | 4 +- .../kubernetes/build/lib/version.libsonnet | 2 +- production/kubernetes/install-bare.sh | 2 +- production/kubernetes/install-loki.sh | 2 +- production/kubernetes/install-sigv4.sh | 2 +- production/kubernetes/install-tempo.sh | 2 +- production/kubernetes/install.sh | 2 +- .../tanka/grafana-agent/v1/main.libsonnet | 4 +- 19 files changed, 154 insertions(+), 28 deletions(-) create mode 100644 .github/workflows/force_release.yml diff --git a/.github/workflows/force_release.yml b/.github/workflows/force_release.yml new file mode 100644 index 000000000000..45e7bb7e5bc7 --- /dev/null +++ b/.github/workflows/force_release.yml @@ -0,0 +1,117 @@ +name: Force Release +on: + workflow_dispatch: + inputs: + tag: + description: "Tag to build for" + required: true +jobs: + test: + name: Test + runs-on: Linux + steps: + - name: Get build dependencies + run: sudo apt-get update && sudo apt-get install libsystemd-dev + + - name: Set up Go 1.16 + uses: actions/setup-go@v1 + with: + go-version: 1.16 + id: go + + - name: Checkout code + uses: actions/checkout@v2 + with: + ref: '${{ github.event.inputs.tag }}' + + - name: Test + run: make test + agent-container: + name: Build agent Container + runs-on: Linux + needs: test + steps: + - name: Get build dependencies + run: sudo apt-get update && sudo apt-get install binfmt-support qemu-user-static + + - name: Checkout code + uses: actions/checkout@v2 + with: + ref: '${{ github.event.inputs.tag }}' + + - name: Login to Docker Hub + run: docker login -u '${{ secrets.DOCKER_USER }}' -p '${{ secrets.DOCKER_PASS }}' + + - name: Prepare buildx + run: | + docker run --rm --privileged multiarch/qemu-user-static --reset -p yes + docker buildx create --name builder --node builder --driver docker-container --use + docker buildx inspect --bootstrap + + - name: Build container + run: | + export RELEASE_TAG=${{ github.event.inputs.tag }} + CROSS_BUILD=true RELEASE_BUILD=true make agent-image + agentctl-container: + name: Build agentctl Container + runs-on: Linux + needs: test + steps: + - name: Get build dependencies + run: sudo apt-get update && sudo apt-get install binfmt-support qemu-user-static + + - name: Checkout code + uses: actions/checkout@v2 + with: + ref: '${{ github.event.inputs.tag }}' + + - name: Login to Docker Hub + run: docker login -u '${{ secrets.DOCKER_USER }}' -p '${{ secrets.DOCKER_PASS }}' + + - name: Prepare buildx + run: | + docker run --rm --privileged multiarch/qemu-user-static --reset -p yes + docker buildx create --name builder --node builder --driver docker-container --use + docker buildx inspect --bootstrap + + - name: Build container + run: | + export RELEASE_TAG=${{ github.event.inputs.tag }} + CROSS_BUILD=true RELEASE_BUILD=true make agentctl-image + release: + name: Release + needs: test + runs-on: Linux + steps: + - name: Get build dependencies + run: sudo apt-get update && sudo apt-get install libsystemd-dev + + - name: Set up Go 1.16 + uses: actions/setup-go@v1 + with: + go-version: 1.16 + id: go + + - name: Install gox and ghr + run: | + pushd / + GO111MODULE=on go get -u \ + github.com/mitchellh/gox \ + github.com/tcnksm/ghr + popd + + - name: Checkout code + uses: actions/checkout@v2 + with: + ref: '${{ github.event.inputs.tag }}' + + - name: Make Release + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + # This is required so gox and ghr are available + export PATH="$(go env GOPATH)/bin:$PATH" + + export RELEASE_TAG=${{ github.event.inputs.tag }} + + make -j4 RELEASE_BUILD=true publish diff --git a/CHANGELOG.md b/CHANGELOG.md index 2534387eea61..14b944c26795 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,10 +1,12 @@ # Main (unreleased) +# v0.15.0 (2021-06-03) + BREAKING CHANGE: Configuration of Tempo Autologging changed in this release. Please review the [migration guide](./docs/migration-guide.md) for details. -- [FEATURE] Add support for exemplars (@mapno) +- [FEATURE] Add support for exemplars. (@mapno) - [ENHANCEMENT] Add the option to log to stdout instead of a Loki instance. (@joe-elliott) @@ -12,16 +14,21 @@ guide](./docs/migration-guide.md) for details. should no longer cause unnecessary load against the Kubernetes SD API. (@rfratto) -- [ENHANCEMENT] Update Prometheus to v2.27.0, Loki to d88f3996eaa2 and Cortex to d382e1d80eaf. - Loki and Cortex are non-release builds, and were needed to support exemplars. (@mapno) +- [ENHANCEMENT] Update Prometheus to v2.27.0. (@mapno) + +- [ENHANCEMENT] Update Loki dependency to d88f3996eaa2. This is a non-release + build, and was needed to support exemplars. (@mapno) + +- [ENHANCEMENT] Update Cortex dependency to to d382e1d80eaf. This is a + non-release build, and was needed to support exemplars. (@mapno) - [BUGFIX] Host filter relabeling rules should now work. (@rfratto) -- [BUGFIX] Fixed issue where span metrics where being reported with wrong time unit (@mapno) +- [BUGFIX] Fixed issue where span metrics where being reported with wrong time unit. (@mapno) - [CHANGE] Intentionally order tracing processors. (@joe-elliott) -# v0.14.0 (2021-05-19) +# v0.14.0 (2021-05-24) BREAKING CHANGE: This release has a breaking change for SigV4 support. Please read the release notes carefully and our [migration diff --git a/docs/configuration-reference.md b/docs/configuration-reference.md index 759620c77d8f..cf20277437b7 100644 --- a/docs/configuration-reference.md +++ b/docs/configuration-reference.md @@ -2312,7 +2312,7 @@ docker run \ -v "/proc:/host/proc:ro,rslave" \ -v /tmp/agent:/etc/agent \ -v /path/to/config.yaml:/etc/agent-config/agent.yaml \ - grafana/agent:v0.14.0 \ + grafana/agent:v0.15.0 \ --config.file=/etc/agent-config/agent.yaml ``` @@ -2352,7 +2352,7 @@ metadata: name: agent spec: containers: - - image: grafana/agent:v0.14.0 + - image: grafana/agent:v0.15.0 name: agent args: - --config.file=/etc/agent-config/agent.yaml @@ -2624,7 +2624,7 @@ docker run \ -v "/proc:/proc:ro" \ -v /tmp/agent:/etc/agent \ -v /path/to/config.yaml:/etc/agent-config/agent.yaml \ - grafana/agent:v0.14.0 \ + grafana/agent:v0.15.0 \ --config.file=/etc/agent-config/agent.yaml ``` @@ -2641,7 +2641,7 @@ metadata: name: agent spec: containers: - - image: grafana/agent:v0.14.0 + - image: grafana/agent:v0.15.0 name: agent args: - --config.file=/etc/agent-config/agent.yaml diff --git a/docs/getting-started.md b/docs/getting-started.md index 95ca9433eac8..090ecc303983 100644 --- a/docs/getting-started.md +++ b/docs/getting-started.md @@ -47,7 +47,7 @@ Currently, there are five ways to install the agent: ### Docker Container ``` -docker pull grafana/agent:v0.14.0 +docker pull grafana/agent:v0.15.0 ``` ### Kubernetes Install Script @@ -283,7 +283,7 @@ path of your Agent's YAML configuration file. docker run \ -v /tmp/agent:/etc/agent \ -v /path/to/config.yaml:/etc/agent/agent.yaml \ - grafana/agent:v0.14.0 + grafana/agent:v0.15.0 ``` ### Locally diff --git a/docs/migration-guide.md b/docs/migration-guide.md index 3b766685fec7..e78d507b68ac 100644 --- a/docs/migration-guide.md +++ b/docs/migration-guide.md @@ -3,6 +3,8 @@ This is a guide detailing all breaking changes that have happened in prior releases and how to migrate to newer versions. +# v0.15.0 + ## Tempo: `automatic_logging` changes Tempo automatic logging previously assumed that the operator wanted to log diff --git a/production/README.md b/production/README.md index a1b896f6068a..e4f11446b284 100644 --- a/production/README.md +++ b/production/README.md @@ -41,7 +41,7 @@ directory on your host that you want the agent to store its WAL. docker run \ -v /tmp/agent:/etc/agent/data \ -v /path/to/config.yaml:/etc/agent/agent.yaml \ - grafana/agent:v0.14.0 + grafana/agent:v0.15.0 ``` ## Running the Agent locally diff --git a/production/grafanacloud-install.sh b/production/grafanacloud-install.sh index 15e99e7d2d77..73be67736ae8 100755 --- a/production/grafanacloud-install.sh +++ b/production/grafanacloud-install.sh @@ -47,7 +47,7 @@ PACKAGE_SYSTEM=${PACKAGE_SYSTEM:=} # # Global constants. # -RELEASE_VERSION="0.14.0" +RELEASE_VERSION="0.15.0" RELEASE_URL="https://github.com/grafana/agent/releases/download/v${RELEASE_VERSION}" DEB_URL="${RELEASE_URL}/grafana-agent-${RELEASE_VERSION}-1.${ARCH}.deb" diff --git a/production/kubernetes/agent-bare.yaml b/production/kubernetes/agent-bare.yaml index 90210706a371..34ac407f53a8 100644 --- a/production/kubernetes/agent-bare.yaml +++ b/production/kubernetes/agent-bare.yaml @@ -61,7 +61,7 @@ spec: - -config.file=/etc/agent/agent.yaml command: - /bin/agent - image: grafana/agent:v0.14.0 + image: grafana/agent:v0.15.0 imagePullPolicy: IfNotPresent name: agent ports: diff --git a/production/kubernetes/agent-loki.yaml b/production/kubernetes/agent-loki.yaml index 6d7dde810150..bdd56b62f0af 100644 --- a/production/kubernetes/agent-loki.yaml +++ b/production/kubernetes/agent-loki.yaml @@ -328,7 +328,7 @@ spec: valueFrom: fieldRef: fieldPath: spec.nodeName - image: grafana/agent:v0.14.0 + image: grafana/agent:v0.15.0 imagePullPolicy: IfNotPresent name: agent ports: diff --git a/production/kubernetes/agent-sigv4.yaml b/production/kubernetes/agent-sigv4.yaml index b6eae70d13c5..7ba32a1c83a6 100644 --- a/production/kubernetes/agent-sigv4.yaml +++ b/production/kubernetes/agent-sigv4.yaml @@ -278,7 +278,7 @@ spec: valueFrom: fieldRef: fieldPath: spec.nodeName - image: grafana/agent:v0.14.0 + image: grafana/agent:v0.15.0 imagePullPolicy: IfNotPresent name: agent ports: @@ -329,7 +329,7 @@ spec: valueFrom: fieldRef: fieldPath: spec.nodeName - image: grafana/agent:v0.14.0 + image: grafana/agent:v0.15.0 imagePullPolicy: IfNotPresent name: agent ports: diff --git a/production/kubernetes/agent-tempo.yaml b/production/kubernetes/agent-tempo.yaml index 6459c8a04b5f..8792eea88e46 100644 --- a/production/kubernetes/agent-tempo.yaml +++ b/production/kubernetes/agent-tempo.yaml @@ -169,7 +169,7 @@ spec: valueFrom: fieldRef: fieldPath: spec.nodeName - image: grafana/agent:v0.14.0 + image: grafana/agent:v0.15.0 imagePullPolicy: IfNotPresent name: agent ports: diff --git a/production/kubernetes/agent.yaml b/production/kubernetes/agent.yaml index c40753c301c7..2f3942eb12e3 100644 --- a/production/kubernetes/agent.yaml +++ b/production/kubernetes/agent.yaml @@ -278,7 +278,7 @@ spec: valueFrom: fieldRef: fieldPath: spec.nodeName - image: grafana/agent:v0.14.0 + image: grafana/agent:v0.15.0 imagePullPolicy: IfNotPresent name: agent ports: @@ -329,7 +329,7 @@ spec: valueFrom: fieldRef: fieldPath: spec.nodeName - image: grafana/agent:v0.14.0 + image: grafana/agent:v0.15.0 imagePullPolicy: IfNotPresent name: agent ports: diff --git a/production/kubernetes/build/lib/version.libsonnet b/production/kubernetes/build/lib/version.libsonnet index bbf9cbf3e437..152d63092a2b 100644 --- a/production/kubernetes/build/lib/version.libsonnet +++ b/production/kubernetes/build/lib/version.libsonnet @@ -1 +1 @@ -'grafana/agent:v0.14.0' +'grafana/agent:v0.15.0' diff --git a/production/kubernetes/install-bare.sh b/production/kubernetes/install-bare.sh index 30893f321465..8ef61e52482a 100644 --- a/production/kubernetes/install-bare.sh +++ b/production/kubernetes/install-bare.sh @@ -17,7 +17,7 @@ check_installed() { check_installed curl check_installed envsubst -MANIFEST_BRANCH=v0.14.0 +MANIFEST_BRANCH=v0.15.0 MANIFEST_URL=${MANIFEST_URL:-https://raw.githubusercontent.com/grafana/agent/${MANIFEST_BRANCH}/production/kubernetes/agent-bare.yaml} NAMESPACE=${NAMESPACE:-default} diff --git a/production/kubernetes/install-loki.sh b/production/kubernetes/install-loki.sh index a00bc22a77b8..66735d8a229f 100644 --- a/production/kubernetes/install-loki.sh +++ b/production/kubernetes/install-loki.sh @@ -31,7 +31,7 @@ check_installed() { check_installed curl check_installed envsubst -MANIFEST_BRANCH=v0.14.0 +MANIFEST_BRANCH=v0.15.0 MANIFEST_URL=${MANIFEST_URL:-https://raw.githubusercontent.com/grafana/agent/${MANIFEST_BRANCH}/production/kubernetes/agent-loki.yaml} NAMESPACE=${NAMESPACE:-default} diff --git a/production/kubernetes/install-sigv4.sh b/production/kubernetes/install-sigv4.sh index ebd9aaa6396e..58dbd5ee4937 100644 --- a/production/kubernetes/install-sigv4.sh +++ b/production/kubernetes/install-sigv4.sh @@ -30,7 +30,7 @@ check_installed() { check_installed curl check_installed envsubst -MANIFEST_BRANCH=v0.14.0 +MANIFEST_BRANCH=v0.15.0 MANIFEST_URL=${MANIFEST_URL:-https://raw.githubusercontent.com/grafana/agent/${MANIFEST_BRANCH}/production/kubernetes/agent-sigv4.yaml} NAMESPACE=${NAMESPACE:-default} ROLE_ARN=${ROLE_ARN:-} diff --git a/production/kubernetes/install-tempo.sh b/production/kubernetes/install-tempo.sh index f0b5695aaa9a..b63c588bc2da 100644 --- a/production/kubernetes/install-tempo.sh +++ b/production/kubernetes/install-tempo.sh @@ -31,7 +31,7 @@ check_installed() { check_installed curl check_installed envsubst -MANIFEST_BRANCH=v0.14.0 +MANIFEST_BRANCH=v0.15.0 MANIFEST_URL=${MANIFEST_URL:-https://raw.githubusercontent.com/grafana/agent/${MANIFEST_BRANCH}/production/kubernetes/agent-tempo.yaml} NAMESPACE=${NAMESPACE:-default} diff --git a/production/kubernetes/install.sh b/production/kubernetes/install.sh index 9d49bb83d964..fb54b3841d97 100644 --- a/production/kubernetes/install.sh +++ b/production/kubernetes/install.sh @@ -32,7 +32,7 @@ check_installed() { check_installed curl check_installed envsubst -MANIFEST_BRANCH=v0.14.0 +MANIFEST_BRANCH=v0.15.0 MANIFEST_URL=${MANIFEST_URL:-https://raw.githubusercontent.com/grafana/agent/${MANIFEST_BRANCH}/production/kubernetes/agent.yaml} NAMESPACE=${NAMESPACE:-default} diff --git a/production/tanka/grafana-agent/v1/main.libsonnet b/production/tanka/grafana-agent/v1/main.libsonnet index dbf4dc715aa1..32e58f138348 100644 --- a/production/tanka/grafana-agent/v1/main.libsonnet +++ b/production/tanka/grafana-agent/v1/main.libsonnet @@ -15,8 +15,8 @@ local service = k.core.v1.service; (import './lib/tempo.libsonnet') + { _images:: { - agent: 'grafana/agent:v0.14.0', - agentctl: 'grafana/agentctl:v0.14.0', + agent: 'grafana/agent:v0.15.0', + agentctl: 'grafana/agentctl:v0.15.0', }, // new creates a new DaemonSet deployment of the grafana-agent. By default,