Apakah ada cara untuk mengakses tag saat ini yang telah didorong dalam Tindakan Github? Di CircleCI Anda dapat mengakses nilai ini dengan $CIRCLE_TAG
variabel.
Yaml Workflow saya dipicu oleh tag seperti ini:
on:
push:
tags:
- 'v*.*.*'
Dan saya ingin menggunakan nomor versi itu sebagai jalur file di alur kerja nanti.
Saya telah memasukkan solusi akhir saya berdasarkan jawaban yang dipilih sebagai jawaban lain di bawah ini: https://stackoverflow.com/a/58195087/756514
refs/tags/
dan hanya mengembalikan bagian terakhir dari string.DEST_PATH: "${{ secrets.AWS_S3_BUCKET }}/$RELEASE_VERSION"
tetapi tidak bisa mendapatkan sintaks yang benar, ada ide? (ini dalam ENV untuk aksi pihak ke-3 yang saya gunakan nanti di omong kosong)${GITHUB_REF:10}
untuk memfilter nama tag, saya akan menggunakan ekspansi parameter${GITHUB_REF#refs/*/}
. Yang akan memperluas/refs/tags/v1.0.1
kev1.0.1
seperti yang diharapkan, tapi akan juga bekerja dengan nama cabang:/refs/heads/master
akan diperluas untukmaster
, melihat gnu.org/software/bash/manual/html_node/...Berikut ini adalah alur kerja yang menunjukkan bahwa
GITHUB_REF
variabel lingkungan berisirefs/tags/v0.0.2
:https://github.com/rmunn/Testing/runs/242676390
Saya menjalankannya dengan membuat tag, lalu melakukan
git push origin v0.0.2
.Berikut cuplikan alur kerja yang Anda lihat di log itu:
Karena log itu pada akhirnya akan dihapus (saya tidak tahu berapa lama log Tindakan Github dipertahankan, tapi itu pasti tidak selamanya), inilah screenshot untuk bukti.
sumber
Jadi terima kasih atas semua bantuan dari @peterevans saya berhasil mencapai hasil yang saya inginkan yaitu:
chrislennon/action-aws-cli
tindakan untuk menginstal aws cli menggunakan rahasia untuk kunciBerikut adalah contoh dari apa yang saya berlari menggunakan tindakan Chris Lennon:
sumber