[Dispatch] Release #357
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "[Dispatch] Release" | |
on: | |
workflow_dispatch: | |
inputs: | |
version: | |
description: 'enter version(x.y.z)' | |
required: true | |
default: '2.0.0' | |
env: | |
VERSION: ${{ github.event.inputs.version }} | |
PACKAGE_VERSION: ${{ github.event.inputs.version }} | |
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} | |
BRANCH_NAME: ${{ github.ref_name }} | |
jobs: | |
build_and_push: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
token: ${{ secrets.PAT_TOKEN }} | |
- name: Set python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.8' | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install setuptools wheel twine | |
- name: Make all and Packaging | |
run: | | |
make clean | |
make all | |
sudo chmod -R 777 dist | |
cd dist/python | |
python setup.py sdist bdist_wheel | |
- name: Publish a Python distribution to PyPI | |
uses: pypa/gh-action-pypi-publish@release/v1 | |
with: | |
user: __token__ | |
password: ${{ secrets.PYPI_API_TOKEN }} | |
verbose: true | |
packages-dir: dist/python/dist/ | |
- name: Push artifacts to ${{ env.BRANCH_NAME }} | |
uses: stefanzweifel/git-auto-commit-action@v4 | |
with: | |
commit_message: "[CI] api has been built" | |
commit_user_name: cloudforet-admin | |
commit_user_email: admin@cloudforet.io | |
commit_author: cloudforet-admin <admin@cloudforet.io> | |
push_options: '--force' | |
tagging_message: ${{ env.VERSION }} | |
- name: Push json to api-doc repository | |
uses: andstor/copycat-action@v3 | |
with: | |
personal_token: ${{ secrets.PAT_TOKEN }} | |
src_path: dist/json/. | |
dst_path: dist/json/. | |
dst_owner: cloudforet-io | |
dst_repo_name: api-doc | |
- name: Notice when job fails | |
if: failure() | |
uses: 8398a7/action-slack@v3.15.0 | |
with: | |
status: ${{job.status}} | |
fields: repo,workflow,job | |
author_name: Github Action Slack | |
trigger_api_doc_release: | |
needs: build_and_push | |
runs-on: ubuntu-latest | |
steps: | |
- name: task | |
uses: benc-uk/workflow-dispatch@v1 | |
with: | |
token: ${{ secrets.PAT_TOKEN }} | |
repo: cloudforet-io/api-doc | |
workflow: dispatch_release.yaml | |
ref: master | |
inputs: '{"version": "${{ env.VERSION }}"}' | |
notification: | |
needs: build_and_push | |
runs-on: ubuntu-latest | |
steps: | |
- name: Slack | |
if: always() | |
uses: 8398a7/action-slack@v3.15.0 | |
with: | |
status: ${{job.status}} | |
fields: repo,message,commit,author,action,ref,workflow,job | |
author_name: Github Action Slack |