Skip to content

chore: troubleshooting host metrics on redhat8 #90

chore: troubleshooting host metrics on redhat8

chore: troubleshooting host metrics on redhat8 #90

Workflow file for this run

name: Build RPM package
on:
push:
paths-ignore:
- 'docs_src/**'
- 'README.md'
- 'CITATION'
- 'book.toml'
- 'CONTRIBUTING.md'
tags: [ 'v*.*.*', 'dev*.*.*' ]
jobs:
build_rpm:
name: Build RPM package
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- uses: Swatinem/rust-cache@v2
with:
# The prefix cache key, this can be changed to start a new cache manually.
# default: "v0-rust"
prefix-key: ""
# A cache key that is used instead of the automatic `job`-based key,
# and is stable over multiple jobs.
# default: empty
shared-key: ""
# An additional cache key that is added alongside the automatic `job`-based
# cache key and can be used to further differentiate jobs.
# default: empty
key: ""
# A whitespace separated list of env-var *prefixes* who's value contributes
# to the environment cache key.
# The env-vars are matched by *prefix*, so the default `RUST` var will
# match all of `RUSTC`, `RUSTUP_*`, `RUSTFLAGS`, `RUSTDOC_*`, etc.
# default: "CARGO CC CFLAGS CXX CMAKE RUST"
env-vars: ""
# The cargo workspaces and target directory configuration.
# These entries are separated by newlines and have the form
# `$workspace -> $target`. The `$target` part is treated as a directory
# relative to the `$workspace` and defaults to "target" if not explicitly given.
# default: ". -> target"
workspaces: ""
# Additional non workspace directories to be cached, separated by newlines.
cache-directories: ""
# Determines whether workspace `target` directories are cached.
# If `false`, only the cargo registry will be cached.
# default: "true"
cache-targets: ""
# Determines if the cache should be saved even when the workflow has failed.
# default: "false"
cache-on-failure: ""
# Determines which crates are cached.
# If `true` all crates will be cached, otherwise only dependent crates will be cached.
# Useful if additional crates are used for CI tooling.
# default: "false"
cache-all-crates: ""
# Determiners whether the cache should be saved.
# If `false`, the cache is only restored.
# Useful for jobs where the matrix is additive e.g. additional Cargo features.
# default: "true"
save-if: ""
- name: Install s3cmd
run: sudo apt install python3-pip -y && sudo pip3 install s3cmd awxkit
- name: Get tag
id: tag
uses: devops-actions/[email protected]
with:
strip_v: true # Optional: Remove 'v' character from version
default: "v0.0.0" # Optional: Default version when tag not found
- name: Override version
run: "sed -i 's/Version: .*/Version: ${{steps.tag.outputs.tag}}/' packaging/linux/redhat/rpmbuild/SPECS/scaphandre.spec"
- name: Debug
run: grep Version packaging/linux/redhat/rpmbuild/SPECS/scaphandre.spec
- name: Extract release notes
id: extract-release-notes
uses: ffurrer2/extract-release-notes@v1
#- name: Display release notes
# run: "echo ${{ steps.extract-release-notes.outputs.release_notes }}"
- name: Edit changelog #TODO commit and push to increase changelog
run: date=$(date "+%a %b %d %Y - "); sed -i "/%changelog/ a * ${date}${{steps.tag.outputs.tag}}/" packaging/linux/redhat/rpmbuild/SPECS/scaphandre.spec
- name: Edit changelog
run: echo " Packaging for version ${{steps.tag.outputs.tag}}" >> packaging/linux/redhat/rpmbuild/SPECS/scaphandre.spec
- name: build RPM package
id: rpm
uses: bpetit/rpmbuild@master
with:
spec_file: "packaging/linux/redhat/rpmbuild/SPECS/scaphandre.spec"
- name: Upload to scw s3
run: |
s3cmd --access_key="${{ secrets.S3_ACCESS_KEY_ID }}" --secret_key="${{ secrets.S3_SECRET_ACCESS_KEY }}" --region="fr-par" --acl-public --host="s3.fr-par.scw.cloud" --host-bucket="%(bucket).s3.fr-par.scw.cloud" put --recursive ${{ steps.rpm.outputs.rpm_dir_path }} s3://scaphandre/
- name: Log on AWX
id: login
run: |
RAW_RESULT=$(awx --conf.host "${{ secrets.AWX_HOST }}" --conf.username "${{ secrets.AWX_PUBLIC_USER }}" --conf.password "${{ secrets.AWX_PASSWORD }}" login)
export AWX_TOKEN=$(echo $RAW_RESULT | jq .token | tr -d '"')
echo "awx_token=${AWX_TOKEN}" >> $GITHUB_OUTPUT
- name: Install and test RPM package
id: rpmtest
run: |
awx --conf.token ${{ steps.login.outputs.awx_token }} --conf.host ${{ secrets.AWX_HOST }} job_templates launch --extra_vars="{\"github_repository\":\"${GITHUB_REPOSITORY}\",\"github_actor\":\"${GITHUB_ACTOR}\",\"github_workflow\":\"${GITHUB_WORKFLOW}\",\"github_workspace\":\"${GITHUB_WORKSPACE}\",\"github_event_name\":\"${GITHUB_EVENT_NAME}\",\"github_event_path\":\"${GITHUB_EVENT_PATH}\",\"github_sha\":\"${GITHUB_SHA}\",\"github_ref\":\"${GITHUB_REF}\",\"github_head_ref\":\"${GITHUB_HEAD_REF}\",\"github_base_ref\":\"${GITHUB_BASE_REF}\",\"github_server_url\":\"${GITHUB_SERVER_URL}\",\"github_rpm_url\":\"https://scaphandre.s3.fr-par.scw.cloud/x86_64/scaphandre-${{steps.tag.outputs.tag}}-1.el9.x86_64.rpm\"}" 19 --monitor