fix release workflow #12
Workflow file for this run
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
################################################################################ | |
# SPDX-License-Identifier: CC0-1.0 | |
# SPDX-FileType: OTHER | |
# SPDX-FileCopyrightText: (c) 2021-2022, The Raetro authors and contributors | |
################################################################################ | |
name: Create New Core Release | |
################################################################################ | |
#env: | |
#ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true | |
on: | |
push: | |
# Sequence of patterns matched against refs/tags | |
tags: | |
- 'v*' # Trigger only when tag matches v*, i.e. v1.0, v21.12.31, v211231 | |
################################################################################ | |
defaults: | |
run: | |
working-directory: Quartus | |
jobs: | |
create_release: | |
runs-on: ubuntu-latest | |
container: | |
image: mbtaylor1982/quartus:22.1 | |
credentials: | |
username: ${{ secrets.DOCKER_HUB_USER }} | |
password: ${{ secrets.DOCKER_HUB_PWD }} | |
#container: raetro/quartus:17.1 # Use DockerHub | |
############################################################################ | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
############################################################################ | |
steps: | |
########################################################################## | |
## 1 - Checkout repository | |
########################################################################## | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
########################################################################## | |
## 2 - Get current version for tagging | |
########################################################################## | |
- name: Get the tag / version | |
id: version | |
run: echo "version=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT | |
########################################################################## | |
## 3 - add tag to version register | |
########################################################################## | |
- name: Replace /$V$ in file registers.v with tag | |
uses: richardrigutins/replace-in-files@v2 | |
with: | |
files: 'RTL/Registers/registers.v' | |
search-text: '/$V$' | |
replacement-text: ${{ steps.version.outputs.version }} | |
- name: Replace /$V$ in file cocotb_resdmac.py with tag | |
uses: richardrigutins/replace-in-files@v2 | |
with: | |
files: 'RTL/cocotb/cocotb_resdmac.py' | |
search-text: '/$V$' | |
replacement-text: ${{ steps.version.outputs.version }} | |
########################################################################## | |
## 4 - RTL synthesis | |
########################################################################## | |
- name: Run 10M16 compilation flow | |
run: quartus_sh -t RESDMAC.tcl 10M16SCU169C8G | |
- name: Run 10M04 compilation flow | |
run: quartus_sh -t RESDMAC.tcl 10M04SCU169C8G | |
########################################################################## | |
## 5 - Upload artifacts | |
########################################################################## | |
- name: Upload artifacts 10M16 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: RESDMAC_10M16_${{ steps.version.outputs.version }}.zip | |
path: Quartus/output_files_10M16SCU169C8G | |
retention-days: 0 | |
- name: Upload artifacts 10M04 | |
uses: actions/upload-artifact@v4 | |
with: | |
name: RESDMAC_10M04_${{ steps.version.outputs.version }}.zip | |
path: Quartus/output_files_10M04SCU169C8G | |
retention-days: 0 | |
########################################################################## | |
## 6 - Create tag with version and SHA256 checksum | |
########################################################################## | |
- name: Copy, tag with version and create SHA256 checksum | |
run: | | |
mkdir -p ../releases | |
cp output_files_10M16SCU169C8G/RESDMAC.pof ../releases/RESDMAC_10M16_${{ steps.version.outputs.version }}.pof | |
cp output_files_10M04SCU169C8G/RESDMAC.pof ../releases/RESDMAC_10M04_${{ steps.version.outputs.version }}.pof | |
sha256sum output_files_10M16SCU169C8G/RESDMAC.pof > ../releases/RESDMAC_10M16_${{ steps.version.outputs.version }}.pof.sha256 | |
sha256sum output_files_10M04SCU169C8G/RESDMAC.pof > ../releases/RESDMAC_10M04_${{ steps.version.outputs.version }}.pof.sha256 | |
########################################################################## | |
## 7 - Gernerate Change Log | |
########################################################################## | |
- name: Changelog | |
uses: janheinrichmerker/action-github-changelog-generator@v2.3 | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
########################################################################## | |
## 8 - Create a new GitHub release and upload the distribution artifacts | |
########################################################################## | |
- name: Create a new GitHub release | |
uses: softprops/action-gh-release@v2 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
body: | | |
${{ steps.Changelog.outputs.changelog }} | |
files: | | |
releases/RESDMAC_10M16_${{ steps.version.outputs.version }}.pof | |
releases/RESDMAC_10M16_${{ steps.version.outputs.version }}.pof.sha256 | |
releases/RESDMAC_10M04_${{ steps.version.outputs.version }}.pof | |
releases/RESDMAC_10M04_${{ steps.version.outputs.version }}.pof.sha256 |