mirror of
https://code.forgejo.org/actions/forgejo-release
synced 2024-11-22 02:00:39 +00:00
a5aa633273
This PR adds the functionality to download the latest release from a repo. The API provides an endpoint to do so, so an option has been added to the action. This closes #12 Co-authored-by: benniekiss <bgmt@mail.bbalm.me> Reviewed-on: https://code.forgejo.org/actions/forgejo-release/pulls/16 Reviewed-by: earl-warren <earl-warren@noreply.code.forgejo.org> Co-authored-by: benniekiss <benniekiss@noreply.code.forgejo.org> Co-committed-by: benniekiss <benniekiss@noreply.code.forgejo.org>
88 lines
2.8 KiB
YAML
88 lines
2.8 KiB
YAML
# SPDX-License-Identifier: MIT
|
|
|
|
#
|
|
# Upload (and download) a release to (and from) a project
|
|
# found in a Forgejo instance that is different from the one running the workflow
|
|
#
|
|
name: two Forgejo
|
|
on: [push]
|
|
jobs:
|
|
setup-forgejo:
|
|
runs-on: self-hosted
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- id: forgejo
|
|
uses: https://code.forgejo.org/actions/setup-forgejo@v1
|
|
with:
|
|
user: testuser
|
|
password: admin1234
|
|
lxc-ip-prefix: 10.0.15
|
|
image-version: 1.20
|
|
- id: testrepo
|
|
run: |
|
|
url=http://testuser:admin1234@${{ steps.forgejo.outputs.host-port }}
|
|
forgejo-test-helper.sh push testrepo $url testuser testrepo > /tmp/output
|
|
echo sha=$(forgejo-test-helper.sh branch_tip $url testuser/testrepo main) >> $GITHUB_OUTPUT
|
|
- id: release-upload
|
|
uses: SELF@vTest
|
|
with:
|
|
direction: upload
|
|
url: ${{ steps.forgejo.outputs.url }}
|
|
repo: testuser/testrepo
|
|
tag: v1.0
|
|
sha: ${{ steps.testrepo.outputs.sha }}
|
|
token: ${{ steps.forgejo.outputs.token }}
|
|
release-dir: upload-dir
|
|
release-notes: "RELEASE NOTES"
|
|
verbose: true
|
|
- id: release-upload-override
|
|
uses: SELF@vTest
|
|
with:
|
|
direction: upload
|
|
url: ${{ steps.forgejo.outputs.url }}
|
|
repo: testuser/testrepo
|
|
tag: v1.0
|
|
sha: ${{ steps.testrepo.outputs.sha }}
|
|
token: ${{ steps.forgejo.outputs.token }}
|
|
release-dir: upload-dir
|
|
release-notes: "RELEASE NOTES"
|
|
override: true
|
|
verbose: true
|
|
- id: release-upload-v2
|
|
uses: SELF@vTest
|
|
with:
|
|
direction: upload
|
|
url: ${{ steps.forgejo.outputs.url }}
|
|
repo: testuser/testrepo
|
|
tag: v2.0
|
|
sha: ${{ steps.testrepo.outputs.sha }}
|
|
token: ${{ steps.forgejo.outputs.token }}
|
|
release-dir: upload-dir-v2
|
|
release-notes: "RELEASE NOTES V2"
|
|
verbose: true
|
|
- id: release-download
|
|
uses: SELF@vTest
|
|
with:
|
|
direction: download
|
|
url: ${{ steps.forgejo.outputs.url }}
|
|
repo: testuser/testrepo
|
|
tag: v1.0
|
|
token: ${{ steps.forgejo.outputs.token }}
|
|
release-dir: download-dir
|
|
verbose: true
|
|
- run: |
|
|
diff -u upload-dir download-dir
|
|
- id: release-download-latest
|
|
uses: SELF@vTest
|
|
with:
|
|
direction: download
|
|
url: ${{ steps.forgejo.outputs.url }}
|
|
repo: testuser/testrepo
|
|
token: ${{ steps.forgejo.outputs.token }}
|
|
release-dir: download-dir-v2
|
|
download-latest: true
|
|
verbose: true
|
|
- run: |
|
|
diff -u upload-dir-v2 download-dir-v2
|
|
- if: failure()
|
|
run: docker logs forgejo
|