mirror of
https://github.com/twbs/bootstrap.git
synced 2025-09-02 18:02:37 +02:00
Migrate MyGet script to GH actions (#41583)
* Migrate MyGet script to GH actions to automatically build/publish the Bootstrap NuGet package when a release is created * Remove `-NoPackageAnalysis` flag * Use sha-1 for jobs --------- Co-authored-by: Jesse Mandel <jesse.mandel@jdpa.com> Co-authored-by: Julien Déramond <juderamond@gmail.com>
This commit is contained in:
31
.github/workflows/publish-nuget.yml
vendored
Normal file
31
.github/workflows/publish-nuget.yml
vendored
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
name: Publish NuGet Packages
|
||||||
|
|
||||||
|
on:
|
||||||
|
release:
|
||||||
|
types: [published]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
package-nuget:
|
||||||
|
runs-on: windows-latest
|
||||||
|
if: ${{ github.repository == 'twbs/bootstrap' && startsWith(github.event.release.tag_name, 'v') }}
|
||||||
|
env:
|
||||||
|
GITHUB_REF_NAME: ${{ github.ref_name }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||||
|
with:
|
||||||
|
persist-credentials: false
|
||||||
|
|
||||||
|
- name: Set up NuGet
|
||||||
|
uses: nuget/setup-nuget@323ab0502cd38fdc493335025a96c8fdb0edc71f # v2.0.1
|
||||||
|
with:
|
||||||
|
nuget-api-key: ${{ secrets.NuGetAPIKey }}
|
||||||
|
nuget-version: '5.x'
|
||||||
|
|
||||||
|
- name: Pack NuGet packages
|
||||||
|
shell: pwsh
|
||||||
|
run: |
|
||||||
|
$bsversion = $env:GITHUB_REF_NAME.Substring(1)
|
||||||
|
nuget pack "nuget\bootstrap.nuspec" -Verbosity detailed -NonInteractive -BasePath . -Version $bsversion
|
||||||
|
nuget pack "nuget\bootstrap.sass.nuspec" -Verbosity detailed -NonInteractive -BasePath . -Version $bsversion
|
||||||
|
nuget push "bootstrap.$bsversion.nupkg" -Verbosity detailed -NonInteractive -Source "https://api.nuget.org/v3/index.json"
|
||||||
|
nuget push "bootstrap.sass.$bsversion.nupkg" -Verbosity detailed -NonInteractive -Source "https://api.nuget.org/v3/index.json"
|
@@ -1,17 +0,0 @@
|
|||||||
# set env vars usually set by MyGet (enable for local testing)
|
|
||||||
#$env:SourcesPath = '..'
|
|
||||||
#$env:NuGet = "./nuget.exe" # https://dist.nuget.org/win-x86-commandline/latest/nuget.exe
|
|
||||||
|
|
||||||
$nuget = $env:NuGet
|
|
||||||
|
|
||||||
# parse the version number out of package.json
|
|
||||||
$bsversionParts = ((Get-Content $env:SourcesPath\package.json) -join "`n" | ConvertFrom-Json).version.split('-', 2) # split the version on the '-'
|
|
||||||
$bsversion = $bsversionParts[0]
|
|
||||||
|
|
||||||
if ($bsversionParts.Length -gt 1) {
|
|
||||||
$bsversion += '-' + $bsversionParts[1].replace('.', '').replace('-', '_') # strip out invalid chars from the PreRelease part
|
|
||||||
}
|
|
||||||
|
|
||||||
# create packages
|
|
||||||
& $nuget pack "$env:SourcesPath\nuget\bootstrap.nuspec" -Verbosity detailed -NonInteractive -NoPackageAnalysis -BasePath $env:SourcesPath -Version $bsversion
|
|
||||||
& $nuget pack "$env:SourcesPath\nuget\bootstrap.sass.nuspec" -Verbosity detailed -NonInteractive -NoPackageAnalysis -BasePath $env:SourcesPath -Version $bsversion
|
|
@@ -2,7 +2,7 @@
|
|||||||
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
|
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
|
||||||
<metadata>
|
<metadata>
|
||||||
<id>bootstrap</id>
|
<id>bootstrap</id>
|
||||||
<!-- pulled from package.json -->
|
<!-- pulled from release tag -->
|
||||||
<version>5</version>
|
<version>5</version>
|
||||||
<title>Bootstrap CSS</title>
|
<title>Bootstrap CSS</title>
|
||||||
<authors>The Bootstrap Authors</authors>
|
<authors>The Bootstrap Authors</authors>
|
||||||
|
@@ -2,7 +2,7 @@
|
|||||||
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
|
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
|
||||||
<metadata>
|
<metadata>
|
||||||
<id>bootstrap.sass</id>
|
<id>bootstrap.sass</id>
|
||||||
<!-- pulled from package.json -->
|
<!-- pulled from release tag -->
|
||||||
<version>5</version>
|
<version>5</version>
|
||||||
<title>Bootstrap Sass</title>
|
<title>Bootstrap Sass</title>
|
||||||
<authors>The Bootstrap Authors</authors>
|
<authors>The Bootstrap Authors</authors>
|
||||||
|
Reference in New Issue
Block a user