Skip to content

Rpm Publish Release

Rpm Publish Release #3

Workflow file for this run

# WARNING: DO NOT EDIT!
#
# This file was generated by plugin_template, and is managed by it. Please use
# './plugin-template --github pulp_rpm' to update this file.
#
# For more info visit https://github.com/pulp/plugin_template
---
name: "Rpm Publish Release"
on:
workflow_dispatch:
# push:
# tags:
# - "[0-9]+.[0-9]+.[0-9]+"
defaults:
run:
working-directory: "pulp_rpm"
jobs:
build:
uses: "./.github/workflows/build.yml"
build-bindings-docs:
needs:
- "build"
runs-on: "ubuntu-latest"
# Install scripts expect TEST to be set, 'docs' is most appropriate even though we don't run tests
env:
TEST: "docs"
steps:
- uses: "actions/checkout@v4"
with:
fetch-depth: 1
path: "pulp_rpm"
- uses: "actions/checkout@v4"
with:
fetch-depth: 1
repository: "pulp/pulp-openapi-generator"
path: "pulp-openapi-generator"
- uses: "actions/setup-python@v5"
with:
python-version: "3.11"
- uses: "actions/download-artifact@v4"
with:
name: "plugin_package"
path: "pulp_rpm/dist/"
- uses: ruby/setup-ruby@v1
with:
ruby-version: "2.6"
- name: "Install python dependencies"
run: |
echo ::group::PYDEPS
pip install towncrier twine wheel httpie docker netaddr boto3 ansible mkdocs
echo "HTTPIE_CONFIG_DIR=$GITHUB_WORKSPACE/pulp_rpm/.ci/assets/httpie/" >> $GITHUB_ENV
echo ::endgroup::
# Building the bindings and docs requires accessing the OpenAPI specs endpoint, so we need to
# setup the Pulp instance.
- name: "Before Install"
run: |
.github/workflows/scripts/before_install.sh
shell: "bash"
env:
PY_COLORS: "1"
ANSIBLE_FORCE_COLOR: "1"
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
GITHUB_CONTEXT: "${{ github.event.pull_request.commits_url }}"
- name: "Install"
run: |
.github/workflows/scripts/install.sh
shell: "bash"
env:
PY_COLORS: "1"
ANSIBLE_FORCE_COLOR: "1"
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
GITHUB_CONTEXT: "${{ github.event.pull_request.commits_url }}"
- name: "Install Python client"
run: |
.github/workflows/scripts/install_python_client.sh
shell: "bash"
- name: "Install Ruby client"
run: |
.github/workflows/scripts/install_ruby_client.sh
shell: "bash"
- name: "Upload python client packages"
uses: "actions/upload-artifact@v4"
with:
name: "python-client.tar"
path: |
pulp_rpm/rpm-python-client.tar
if-no-files-found: "error"
overwrite: true
- name: "Upload python client docs"
uses: "actions/upload-artifact@v4"
with:
name: "python-client-docs.tar"
path: |
pulp_rpm/rpm-python-client-docs.tar
if-no-files-found: "error"
overwrite: true
- name: "Upload ruby client packages"
uses: "actions/upload-artifact@v4"
with:
name: "ruby-client.tar"
path: |
pulp_rpm/rpm-ruby-client.tar
if-no-files-found: "error"
overwrite: true
# - name: Build docs
# run: |
# export DJANGO_SETTINGS_MODULE=pulpcore.app.settings
# export PULP_SETTINGS=$PWD/.ci/ansible/settings/settings.py
# make -C docs/ PULP_URL="https://pulp" diagrams html
# tar -cvf docs/docs.tar docs/_build
# - name: "Upload built docs"
# uses: actions/upload-artifact@v4
# with:
# name: "docs.tar"
# path: "pulp_rpm/docs/docs.tar"
# if-no-files-found: "error"
# overwrite: true
# - name: "Logs"
# if: always()
# run: |
# echo "Need to debug? Please check: https://github.com/marketplace/actions/debugging-with-tmate"
# http --timeout 30 --check-status --pretty format --print hb "https://pulp${PULP_API_ROOT}api/v3/status/" || true
# docker images || true
# docker ps -a || true
# docker logs pulp || true
# docker exec pulp ls -latr /etc/yum.repos.d/ || true
# docker exec pulp cat /etc/yum.repos.d/* || true
# docker exec pulp bash -c "pip3 list && pip3 install pipdeptree && pipdeptree"
# publish-package:
# runs-on: "ubuntu-latest"
# needs:
# - "build-bindings-docs"
# env:
# GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
# steps:
# - uses: "actions/checkout@v4"
# with:
# fetch-depth: 1
# path: "pulp_rpm"
# - uses: "actions/download-artifact@v4"
# with:
# name: "plugin_package"
# path: "pulp_rpm/dist/"
# - uses: "actions/setup-python@v5"
# with:
# python-version: "3.11"
# - name: "Install python dependencies"
# run: |
# echo ::group::PYDEPS
# pip install twine
# echo ::endgroup::
# - name: "Setting secrets"
# run: |
# python3 .github/workflows/scripts/secrets.py "$SECRETS_CONTEXT"
# env:
# SECRETS_CONTEXT: "${{ toJson(secrets) }}"
# - name: "Deploy plugin to pypi"
# run: |
# .github/workflows/scripts/publish_plugin_pypi.sh ${{ github.ref_name }}
# publish-python-bindings:
# runs-on: "ubuntu-latest"
# needs:
# - "build-bindings-docs"
# env:
# GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
# steps:
# - uses: "actions/checkout@v4"
# with:
# fetch-depth: 1
# path: "pulp_rpm"
# - name: "Download Python client"
# uses: "actions/download-artifact@v4"
# with:
# name: "python-client.tar"
# path: "pulp_rpm/"
# - name: "Untar python client packages"
# run: |
# tar -xvf rpm-python-client.tar
# - uses: "actions/setup-python@v5"
# with:
# python-version: "3.11"
# - name: "Install python dependencies"
# run: |
# echo ::group::PYDEPS
# pip install twine
# echo ::endgroup::
# - name: "Setting secrets"
# run: |
# python3 .github/workflows/scripts/secrets.py "$SECRETS_CONTEXT"
# env:
# SECRETS_CONTEXT: "${{ toJson(secrets) }}"
# - name: "Publish client to pypi"
# run: |
# bash .github/workflows/scripts/publish_client_pypi.sh ${{ github.ref_name }}
# publish-ruby-bindings:
# runs-on: "ubuntu-latest"
# needs:
# - "build-bindings-docs"
# env:
# GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
# steps:
# - uses: "actions/checkout@v4"
# with:
# fetch-depth: 1
# path: "pulp_rpm"
# - name: "Download Ruby client"
# uses: "actions/download-artifact@v4"
# with:
# name: "ruby-client.tar"
# path: "pulp_rpm/"
# - name: "Untar Ruby client packages"
# run: |
# tar -xvf rpm-ruby-client.tar
# - uses: ruby/setup-ruby@v1
# with:
# ruby-version: "2.6"
# - name: "Setting secrets"
# run: |
# python3 .github/workflows/scripts/secrets.py "$SECRETS_CONTEXT"
# env:
# SECRETS_CONTEXT: "${{ toJson(secrets) }}"
# - name: "Publish client to rubygems"
# run: |
# bash .github/workflows/scripts/publish_client_gem.sh ${{ github.ref_name }}
# publish-docs:
# runs-on: "ubuntu-latest"
# needs:
# - "build-bindings-docs"
# env:
# GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
# steps:
# - uses: "actions/checkout@v4"
# with:
# fetch-depth: 1
# path: "pulp_rpm"
# - uses: "actions/setup-python@v5"
# with:
# python-version: "3.11"
# - name: "Install python dependencies"
# run: |
# echo ::group::PYDEPS
# pip install 'packaging~=21.3' requests
# echo ::endgroup::
# - name: "Setting secrets"
# run: |
# python3 .github/workflows/scripts/secrets.py "$SECRETS_CONTEXT"
# env:
# SECRETS_CONTEXT: "${{ toJson(secrets) }}"
# - name: "Download built docs"
# uses: "actions/download-artifact@v4"
# with:
# name: "docs.tar"
# path: "pulp_rpm/"
# - name: "Download Python client docs"
# uses: "actions/download-artifact@v4"
# with:
# name: "python-client-docs.tar"
# path: "pulp_rpm/"
# - name: "Publish docs to pulpproject.org"
# run: |
# tar -xvf docs.tar
# .github/workflows/scripts/publish_docs.sh tag ${{ github.ref_name }}
# create-gh-release:
# runs-on: "ubuntu-latest"
# needs:
# - "build-bindings-docs"
# - "publish-package"
# - "publish-python-bindings"
# - "publish-ruby-bindings"
# - "publish-docs"
# steps:
# - name: "Create release on GitHub"
# uses: "actions/github-script@v7"
# env:
# TAG_NAME: "${{ github.ref_name }}"
# with:
# script: |
# const { TAG_NAME } = process.env;
# await github.rest.repos.createRelease({
# owner: context.repo.owner,
# repo: context.repo.repo,
# tag_name: TAG_NAME,
# make_latest: "legacy",
# });