onyxmueller / build-tag-number Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
Create an example repo demonstrating working workflows with each runner OS type.
Hey there,
Wondering if you could update the v1
tag to point to your latest release - that way anyone referencing v1
of your action will automatically get updates. Here's an article on Github's recommended tagging practice for Actions:
I used to use the original Action and as of today I had an error about multiple tags being present.
build-and-deploy
ERROR: Too many build-number- refs in repository, found 7, expected only 1. Check your tags!
I could not see 7 references and because we only just started using build numbers I removed ALL build number tags and thought to start from scratch and updated to your current branch. So my jobs at the moment looks like this:
jobs: build-and-deploy: runs-on: windows-latest steps: - uses: actions/checkout@v3 - name: Setup .NET Core uses: actions/setup-dotnet@v1 with: dotnet-version: ${{ env.DOTNET_CORE_VERSION }} - name: Restore run: dotnet restore "${{ env.WORKING_DIRECTORY }}" - name: Read Version File Content id: json_properties uses: ActionsTools/read-json-action@main with: file_path: "./VERSION.json" - name: Version File Content run: echo ${{ steps.json_properties.outputs.version }} - name: Generate Build Number uses: onyxmueller/build-tag-number@v1 with: token: ${{ secrets.github_token }} - name: Print New Build Number run: echo "Build number is ${env:BUILD_NUMBER}" - name: Build run: dotnet build "${{ env.WORKING_DIRECTORY }}" --configuration ${{ env.CONFIGURATION }} --no-restore -property:Version=${{ steps.json_properties.outputs.version }}.${env:BUILD_NUMBER}
And the debug output is this:
Generate Build Number
Run onyxmueller/build-tag-number@v1
Last build nr was 3.
Updating build counter to 4...
Successfully updated build number to 4
'build_number=4' >> $GITHUB_OUTPUT
Deleting 1 older build counters...
Deleted refs/tags/build-number-3
Print New Build Number
Run echo "Build number is ${env:build_number}"
Build number is
And my build fails as I use the build number and it is not present.
It seems that the number is generated but for some reason it is not stored on the BUILD_NUMBER specified as per your example usage. Also I still see all build tags (build-number-1, build-number-2, build-number-3) on my repo, which I believe is as expected. This was also the behaviour of the original Action.
I am definitely running the action on a windows environment (runs-on: windows-latest), and I did use to always have the Build_Number correctly outputted and and passed onto my build command. The environment has not changed. However I do not get the build number any longer stored in the parameter. The original Action did not have any commits since Nov 2020, so I cannot understand the change in behaviour.
Is there an issue with the Action or has Github changed something?
Thank you
At the action, we have a check for old tags with the same prefix, and if we have more than 5 tags matching the search we exit with an error.
I think that this is overkill and it is unnecessary to fail jobs/build just because of that. It is better to change it to a warning.
Also maybe adding a flag that will clean it automatically.
i am talking about the code at main.js line 98
const MAX_OLD_NUMBERS = 5; //One or two ref deletes might fail, but if we have lots then there's something wrong!
if (nrTags.length > MAX_OLD_NUMBERS) {
fail(`ERROR: Too many ${prefix}build-number- refs in repository, found ${nrTags.length}, expected only 1. Check your tags!`);
}
Hello,
I want to use the existing build-number- tags in Releases, so I don't need to delete them.
Would be this possible?
Thank you :)
Hi
My yml file is as follows:
permissions:
contents: read
packages: write
pull-requests: write
repository-projects: write
- name: Generate Build Number
id: buildnumber
uses: onyxmueller/build-tag-number@v1
with:
token: ${{ secrets.github_token }}
However as off today I am getting the following error message and I'm not sure if it is the build-tag-number or github:
##[debug]Evaluating condition for step: 'Generate Build Number'
##[debug]Evaluating: success()
##[debug]Evaluating success:
##[debug]=> true
##[debug]Result: true
##[debug]Starting: Generate Build Number
##[debug]Loading inputs
##[debug]Evaluating: secrets.github_token
##[debug]Evaluating Index:
##[debug]..Evaluating secrets:
##[debug]..=> Object
##[debug]..Evaluating String:
##[debug]..=> 'github_token'
##[debug]=> '***'
##[debug]Result: '***'
##[debug]Loading env
Run onyxmueller/build-tag-number@v1
Last build nr was 506.
Updating build counter to 507...
Error: Failed to create new build-number ref. Status: 403, err: null, result: {"message":"Resource not accessible by integration","documentation_url":"https://docs.github.com/rest/git/refs#create-a-reference"}
##[debug]Node Action run completed with exit code 1
##[debug]Finishing: Generate Build Number
Since I am getting an 403 (and this worked so far) and you have no changes in months I am assuming the issue is possibly the github token generation, but I wanted to hear your opinion too. At the moment I do not see any other similar issues raised. Will investigate further.
Just moved our repositories from a personal account to an Organisation. I have been getting the following error:
Run onyxmueller/build-tag-number@v1
with:
token: ***
env:
AZURE_WEBAPP_NAME: XXX-dev
AZURE_WEBAPP_PACKAGE_PATH: XXX\published
CONFIGURATION: Release
DOTNET_CORE_VERSION: 7.0.x
WORKING_DIRECTORY: XXX
DOTNET_ROOT: C:\Program Files\dotnet
Last build nr was 359.
Updating build counter to 360...
Error: Failed to create new build-number ref. Status: 403, err: null, result: {"message":"Resource not accessible by integration","documentation_url":"https://docs.github.com/rest/git/refs#create-a-reference"}
The action setup is as follows:
- name: Generate Build Number
id: buildnumber
uses: onyxmueller/build-tag-number@v1
with:
token: ${{ secrets.github_token }}
- name: Print New Build Number
run: echo "Build number is ${{steps.buildnumber.outputs.build_number}}"
I do not understand why we are getting the 403 response.....
Do I need to update any permissions now we have moved to Organisation?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.