Skip to content

Bump reqwest from 0.12.3 to 0.12.4 #246

Bump reqwest from 0.12.3 to 0.12.4

Bump reqwest from 0.12.3 to 0.12.4 #246

Workflow file for this run

name: Build/publish release
on: [push, pull_request]
jobs:
binaries:
name: Binary ${{ matrix.target }} (on ${{ matrix.os }})
runs-on: ${{ matrix.os }}
outputs:
version: ${{ steps.extract_version.outputs.version }}
strategy:
matrix:
include:
- os: ubuntu-latest
target: x86_64-unknown-linux-musl
cross: true
- os: ubuntu-latest
target: x86_64-unknown-linux-gnu
cross: true
- os: ubuntu-latest
target: aarch64-unknown-linux-musl
cross: true
- os: ubuntu-latest
target: aarch64-unknown-linux-gnu
cross: true
- os: ubuntu-latest
target: armv7-unknown-linux-musleabihf
cross: true
- os: ubuntu-latest
target: armv7-unknown-linux-gnueabihf
cross: true
- os: ubuntu-latest
target: arm-unknown-linux-musleabihf
cross: true
- os: windows-latest
target: x86_64-pc-windows-msvc
cross: false
- os: macos-latest
target: x86_64-apple-darwin
cross: false
- os: ubuntu-latest
target: x86_64-unknown-freebsd
cross: true
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Rust toolchain
uses: dtolnay/rust-toolchain@stable
- run: sudo apt install musl-tools
if: startsWith(matrix.os, 'ubuntu')
- name: cargo build
uses: houseabsolute/actions-rust-cross@v0
with:
command: build
args: --release --locked
target: ${{ matrix.target }}
- name: Set exe extension for Windows
run: echo "EXE=.exe" >> $env:GITHUB_ENV
if: startsWith(matrix.os, 'windows')
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.target }}
path: target/${{ matrix.target }}/release/site24x7_exporter${{ env.EXE }}
- name: Get version from tag
id: extract_version
run: |
echo "version=${GITHUB_REF_NAME#v}" >> "$GITHUB_OUTPUT"
shell: bash
- name: Install CHANGELOG parser
uses: taiki-e/install-action@parse-changelog
- name: Get CHANGELOG entry
run: parse-changelog CHANGELOG.md ${{ steps.extract_version.outputs.version }} | tee changelog_entry
if: startsWith(github.ref_name, 'v') && github.ref_type == 'tag'
shell: bash
- name: Read changelog entry from file
id: changelog_entry
uses: juliangruber/read-file-action@v1
with:
path: ./changelog_entry
if: startsWith(github.ref_name, 'v') && github.ref_type == 'tag'
- name: Release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: target/${{ matrix.target }}/release/site24x7_exporter${{ env.EXE }}
tag: ${{ github.ref_name }}
asset_name: site24x7_exporter-${{ steps.extract_version.outputs.version }}-${{ matrix.target }}${{ env.EXE }}
body: ${{ steps.changelog_entry.outputs.content }}
if: startsWith(github.ref_name, 'v') && github.ref_type == 'tag'
container-images:
name: Publish images
runs-on: ubuntu-latest
needs: binaries
if: (startsWith(github.ref_name, 'v') && github.ref_type == 'tag') || github.event.repository.default_branch == github.ref_name
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Download artifact aarch64-unknown-linux-gnu
uses: actions/download-artifact@v4
with:
name: aarch64-unknown-linux-gnu
path: target/aarch64-unknown-linux-gnu/release
- name: Download artifact x86_64-unknown-linux-gnu
uses: actions/download-artifact@v4
with:
name: x86_64-unknown-linux-gnu
path: target/x86_64-unknown-linux-gnu/release
- name: Download artifact armv7-unknown-linux-gnueabihf
uses: actions/download-artifact@v4
with:
name: armv7-unknown-linux-gnueabihf
path: target/armv7-unknown-linux-gnueabihf/release
- name: podman login
run: podman login --username ${{ secrets.DOCKERHUB_USERNAME }} --password ${{ secrets.DOCKERHUB_TOKEN }} docker.io
- name: podman build linux/arm64
run: podman build --format docker --platform linux/arm64/v8 --manifest site24x7_exporter -f Containerfile target/aarch64-unknown-linux-gnu/release
- name: podman build linux/amd64
run: podman build --format docker --platform linux/amd64 --manifest site24x7_exporter -f Containerfile target/x86_64-unknown-linux-gnu/release
- name: podman build linux/arm
run: podman build --format docker --platform linux/arm/v7 --manifest site24x7_exporter -f Containerfile target/armv7-unknown-linux-gnueabihf/release
- name: podman manifest push latest
run: podman manifest push site24x7_exporter docker.io/svenstaro/site24x7_exporter:latest
- name: podman manifest push tag version
run: podman manifest push site24x7_exporter docker.io/svenstaro/site24x7_exporter:${{ needs.binaries.outputs.version }}
if: startsWith(github.ref_name, 'v')