From cd84636fdcae8b7f013286960afa55ed5136eaeb Mon Sep 17 00:00:00 2001 From: wesleymccollam Date: Tue, 14 Jan 2025 16:21:18 -0500 Subject: [PATCH 1/6] add Windows support, update README content --- .goreleaser.yaml | 149 +++++++++++++++++++++++++++++++++++++++++++++++ README.md | 40 ++++++++++--- 2 files changed, 182 insertions(+), 7 deletions(-) diff --git a/.goreleaser.yaml b/.goreleaser.yaml index 522dc88d..edfc4995 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -1,5 +1,30 @@ version: 2 +archives: + - # Builds reference which build instances should be archived in this archive. + builds: + - pingcli + + # Archive format. + # + # If format is `binary`, no archives are created and the binaries are instead + # uploaded directly. + # + # Valid options are: + # - `tar.gz` + # - `tgz` + # - `tar.xz` + # - `txz` + # - `tar.zst` + # - `tzst` # Since: v2.1. + # - `tar` + # - `gz` + # - `zip` + # - `binary` + # + # Default: 'tar.gz'. + format: zip + builds: # You can have multiple builds defined as a yaml list - # @@ -239,3 +264,127 @@ docker_manifests: image_templates: - "pingidentity/pingcli:{{ .Tag }}-amd64" - "pingidentity/pingcli:{{ .Tag }}-arm64" + +winget: + - # Publisher name. + # + # Templates: allowed. + # Required + publisher: pingcli + + # Your app's description. + # + # Templates: allowed. + # Required + # Default: inferred from global metadata. + short_description: "The Ping CLI is a unified command line interface." + + # License name. + # + # Templates: allowed. + # Required + # Default: inferred from global metadata. + license: "Apache" + + # Path for the file inside the repository. + # + # Default: 'manifests////'. + path: windows_manifests/{{ .Tag }} + + # Publisher URL. + # + # Templates: allowed. + publisher_url: https://pingidentity.com + + # Publisher support URL. + # + # Templates: allowed. + publisher_support_url: "https://github.com/pingidentity/pingcli/issues/new" + + # GOAMD64 to specify which amd64 version to use if there are multiple + # versions from the build section. + # + # Default: 'v1'. + goamd64: v1 + + # Git author used to commit to the repository. + commit_author: + name: goreleaserbot + email: bot@goreleaser.com + + # The project name and current git tag are used in the format string. + # + # Templates: allowed. + commit_msg_template: "{{ .PackageIdentifier }}: {{ .Tag }}" + + # Your app's homepage. + # + # Default: inferred from global metadata. + homepage: "https://github.com/pingidentity/pingcli" + + # Your app's long description. + # + # Templates: allowed. + # Default: inferred from global metadata. + description: "The Ping CLI is a unified command line interface for configuring and managing Ping Identity Services." + + # License URL. + # + # Templates: allowed. + license_url: "http://www.apache.org/licenses/" + + # Copyright. + # + # Templates: allowed. + copyright: "Ping Identity Corporation" + + # Copyright URL. + # + # Templates: allowed. + copyright_url: "https://support.pingidentity.com/s/article/Copyright-and-Trademarks" + + # Setting this will prevent goreleaser to actually try to commit the updated + # package - instead, it will be stored on the dist directory only, + # leaving the responsibility of publishing it to the user. + # + # If set to auto, the release will not be uploaded to the repository + # in case there is an indicator for prerelease in the tag e.g. v1.0.0-rc1 + # + # Templates: allowed. + skip_upload: false + + # Release notes. + # + # If you want to use the release notes generated by GoReleaser, use + # `{{.Changelog}}` as the value. + # + # Templates: allowed. + release_notes: "{{.Changelog}}" + + # Release notes URL. + # + # Templates: allowed. + release_notes_url: "https://github.com/pingidentity" + + # Tags. + tags: + - golang + - cli + + # Repository to push the generated files to. + repository: + # Repository owner. + # + # Templates: allowed. + owner: pingidentity + + # Repository name. + # + # Templates: allowed. + name: pingcli + + # Optionally a branch can be provided. + # + # Default: default repository branch. + # Templates: allowed. + branch: main diff --git a/README.md b/README.md index f6da997b..01613dd4 100644 --- a/README.md +++ b/README.md @@ -8,11 +8,13 @@ The Ping CLI is a unified command line interface for configuring and managing Pi Use the [Ping CLI Docker image](https://hub.docker.com/r/pingidentity/pingcli) -```text Pull Image: +```shell docker pull pingidentity/pingcli:latest +``` Example Commands: +```shell docker run docker run --version @@ -22,11 +24,11 @@ docker run --version Use PingIdentity's Homebrew tap to install Ping CLI -```text +```shell brew install pingidentity/tap/pingcli - +``` or - +``` shell brew tap pingidentity/tap brew install pingcli ``` @@ -39,7 +41,7 @@ OR Use the following single-line command to install Ping CLI into '/usr/local/bin' directly. -```text +```shell RELEASE_VERSION=$(basename $(curl -Ls -o /dev/null -w %{url_effective} https://github.com/pingidentity/pingcli/releases/latest)); \ OS_NAME=$(uname -s); \ HARDWARE_PLATFORM=$(uname -m | sed s/aarch64/arm64/ | sed s/x86_64/amd64/); \ @@ -56,8 +58,8 @@ See [the latest GitHub release](https://github.com/pingidentity/pingcli/releases OR Use the following single-line powershell command to install Ping CLI into '%LOCALAPPDATA%\Programs' directly. -```text -$latestReleaseUrl = Invoke-WebRequest -Uri "https://github.com/pingidentity/pingcli/releases/latest" -MaximumRedirection 0 -ErrorAction Ignore -UseBasicParsing -SkipHttpErrorCheck; ` +```powershell +$latestReleaseUrl = Invoke-WebRequest -Uri "https://github.com/pingidentity/pingcli/releases/latest" -MaximumRedirection 0 -ErrorAction Ignore -UseBasicParsing; ` $RELEASE_VERSION = [System.IO.Path]::GetFileName($latestReleaseUrl.Headers.Location); ` $RELEASE_VERSION_NO_PREFIX = $RELEASE_VERSION -replace "^v", ""; ` $uname = (uname -m); ` @@ -68,6 +70,30 @@ tar -zxf pingcli.tar.gz -C "${env:LOCALAPPDATA}\Programs" pingcli.exe; ` Remove-Item pingcli.tar.gz ``` +### `winget` Installation - Windows + + +Use the following PowerShell to easily install the `yaml` manifests using `winget` +```powershell +$latestReleaseUrl = Invoke-WebRequest -Uri "https://github.com/pingidentity/pingcli/releases/latest" -MaximumRedirection 0 -ErrorAction Ignore -UseBasicParsing; ` +$RELEASE_VERSION = [System.IO.Path]::GetFileName($latestReleaseUrl.Headers.Location); ` +$URL = "https://github.com/pingidentity/pingcli/archive/refs/tags/${RELEASE_VERSION}.tar.gz"; ` +$pingcliPath = "${env:LOCALAPPDATA}\Programs\pingcli"; ` +$testPingcliPath = Test-Path "$pingcliPath"; ` +if ($testPingcliPath -eq $false) {New-Item -ItemType "directory" -Path "$pingcliPath" >$null }; ` +$installerManifestYaml = "pingcli-test.pingcli-test.installer.yaml"; ` +$installerManifest = "https://raw.githubusercontent.com/pingidentity/pingcli/refs/heads/main/windows_manifests/${RELEASE_VERSION}/${installerManifestYaml}"; ` +Invoke-WebRequest -Method Get -Uri $installerManifest -OutFile "${pingcliPath}\${installerManifestYaml}" -UseBasicParsing -MaximumRedirection 0; ` +$localeManifestYaml = "pingcli-test.pingcli-test.locale.en-US.yaml"; ` +$localeManifest = "https://raw.githubusercontent.com/pingidentity/pingcli/refs/heads/main/windows_manifests/${RELEASE_VERSION}/${localeManifestYaml}"; ` +Invoke-WebRequest -Method Get -Uri $localeManifest -OutFile "${pingcliPath}\${localeManifestYaml}" -UseBasicParsing -MaximumRedirection 0; ` +$mainManifestYaml = "pingcli-test.pingcli-test.yaml"; ` +$mainManifest = "https://raw.githubusercontent.com/pingidentity/pingcli/refs/heads/main/windows_manifests/${RELEASE_VERSION}/${mainManifestYaml}"; ` +Invoke-WebRequest -Method Get -Uri $mainManifest -OutFile "${pingcliPath}\${mainManifestYaml}" -UseBasicParsing -MaximumRedirection 0; ` +winget install -m "${pingcliPath}\" +``` + + ## Configure Ping CLI Before using the Ping CLI, you need to configure your Ping Identity Service profile(s). The following steps show the quickest path to configuration. From 04e8d5e56d921ab3f7417f11fbc2d18d1626d6c6 Mon Sep 17 00:00:00 2001 From: wesleymccollam Date: Tue, 14 Jan 2025 16:23:29 -0500 Subject: [PATCH 2/6] update verbiage on winget installation section --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 01613dd4..1dc87ac0 100644 --- a/README.md +++ b/README.md @@ -73,7 +73,7 @@ Remove-Item pingcli.tar.gz ### `winget` Installation - Windows -Use the following PowerShell to easily install the `yaml` manifests using `winget` +Use the following PowerShell to easily install the `yaml` manifests locally with `winget` ```powershell $latestReleaseUrl = Invoke-WebRequest -Uri "https://github.com/pingidentity/pingcli/releases/latest" -MaximumRedirection 0 -ErrorAction Ignore -UseBasicParsing; ` $RELEASE_VERSION = [System.IO.Path]::GetFileName($latestReleaseUrl.Headers.Location); ` From ae34c6554db4b5b353ac37ca327124cd0d262303 Mon Sep 17 00:00:00 2001 From: wesleymccollam Date: Wed, 15 Jan 2025 12:22:17 -0500 Subject: [PATCH 3/6] use PowerShell install method for Windows --- .goreleaser.yaml | 149 ----------------------------------------------- README.md | 24 -------- 2 files changed, 173 deletions(-) diff --git a/.goreleaser.yaml b/.goreleaser.yaml index edfc4995..522dc88d 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -1,30 +1,5 @@ version: 2 -archives: - - # Builds reference which build instances should be archived in this archive. - builds: - - pingcli - - # Archive format. - # - # If format is `binary`, no archives are created and the binaries are instead - # uploaded directly. - # - # Valid options are: - # - `tar.gz` - # - `tgz` - # - `tar.xz` - # - `txz` - # - `tar.zst` - # - `tzst` # Since: v2.1. - # - `tar` - # - `gz` - # - `zip` - # - `binary` - # - # Default: 'tar.gz'. - format: zip - builds: # You can have multiple builds defined as a yaml list - # @@ -264,127 +239,3 @@ docker_manifests: image_templates: - "pingidentity/pingcli:{{ .Tag }}-amd64" - "pingidentity/pingcli:{{ .Tag }}-arm64" - -winget: - - # Publisher name. - # - # Templates: allowed. - # Required - publisher: pingcli - - # Your app's description. - # - # Templates: allowed. - # Required - # Default: inferred from global metadata. - short_description: "The Ping CLI is a unified command line interface." - - # License name. - # - # Templates: allowed. - # Required - # Default: inferred from global metadata. - license: "Apache" - - # Path for the file inside the repository. - # - # Default: 'manifests////'. - path: windows_manifests/{{ .Tag }} - - # Publisher URL. - # - # Templates: allowed. - publisher_url: https://pingidentity.com - - # Publisher support URL. - # - # Templates: allowed. - publisher_support_url: "https://github.com/pingidentity/pingcli/issues/new" - - # GOAMD64 to specify which amd64 version to use if there are multiple - # versions from the build section. - # - # Default: 'v1'. - goamd64: v1 - - # Git author used to commit to the repository. - commit_author: - name: goreleaserbot - email: bot@goreleaser.com - - # The project name and current git tag are used in the format string. - # - # Templates: allowed. - commit_msg_template: "{{ .PackageIdentifier }}: {{ .Tag }}" - - # Your app's homepage. - # - # Default: inferred from global metadata. - homepage: "https://github.com/pingidentity/pingcli" - - # Your app's long description. - # - # Templates: allowed. - # Default: inferred from global metadata. - description: "The Ping CLI is a unified command line interface for configuring and managing Ping Identity Services." - - # License URL. - # - # Templates: allowed. - license_url: "http://www.apache.org/licenses/" - - # Copyright. - # - # Templates: allowed. - copyright: "Ping Identity Corporation" - - # Copyright URL. - # - # Templates: allowed. - copyright_url: "https://support.pingidentity.com/s/article/Copyright-and-Trademarks" - - # Setting this will prevent goreleaser to actually try to commit the updated - # package - instead, it will be stored on the dist directory only, - # leaving the responsibility of publishing it to the user. - # - # If set to auto, the release will not be uploaded to the repository - # in case there is an indicator for prerelease in the tag e.g. v1.0.0-rc1 - # - # Templates: allowed. - skip_upload: false - - # Release notes. - # - # If you want to use the release notes generated by GoReleaser, use - # `{{.Changelog}}` as the value. - # - # Templates: allowed. - release_notes: "{{.Changelog}}" - - # Release notes URL. - # - # Templates: allowed. - release_notes_url: "https://github.com/pingidentity" - - # Tags. - tags: - - golang - - cli - - # Repository to push the generated files to. - repository: - # Repository owner. - # - # Templates: allowed. - owner: pingidentity - - # Repository name. - # - # Templates: allowed. - name: pingcli - - # Optionally a branch can be provided. - # - # Default: default repository branch. - # Templates: allowed. - branch: main diff --git a/README.md b/README.md index 1dc87ac0..45ab8e34 100644 --- a/README.md +++ b/README.md @@ -70,30 +70,6 @@ tar -zxf pingcli.tar.gz -C "${env:LOCALAPPDATA}\Programs" pingcli.exe; ` Remove-Item pingcli.tar.gz ``` -### `winget` Installation - Windows - - -Use the following PowerShell to easily install the `yaml` manifests locally with `winget` -```powershell -$latestReleaseUrl = Invoke-WebRequest -Uri "https://github.com/pingidentity/pingcli/releases/latest" -MaximumRedirection 0 -ErrorAction Ignore -UseBasicParsing; ` -$RELEASE_VERSION = [System.IO.Path]::GetFileName($latestReleaseUrl.Headers.Location); ` -$URL = "https://github.com/pingidentity/pingcli/archive/refs/tags/${RELEASE_VERSION}.tar.gz"; ` -$pingcliPath = "${env:LOCALAPPDATA}\Programs\pingcli"; ` -$testPingcliPath = Test-Path "$pingcliPath"; ` -if ($testPingcliPath -eq $false) {New-Item -ItemType "directory" -Path "$pingcliPath" >$null }; ` -$installerManifestYaml = "pingcli-test.pingcli-test.installer.yaml"; ` -$installerManifest = "https://raw.githubusercontent.com/pingidentity/pingcli/refs/heads/main/windows_manifests/${RELEASE_VERSION}/${installerManifestYaml}"; ` -Invoke-WebRequest -Method Get -Uri $installerManifest -OutFile "${pingcliPath}\${installerManifestYaml}" -UseBasicParsing -MaximumRedirection 0; ` -$localeManifestYaml = "pingcli-test.pingcli-test.locale.en-US.yaml"; ` -$localeManifest = "https://raw.githubusercontent.com/pingidentity/pingcli/refs/heads/main/windows_manifests/${RELEASE_VERSION}/${localeManifestYaml}"; ` -Invoke-WebRequest -Method Get -Uri $localeManifest -OutFile "${pingcliPath}\${localeManifestYaml}" -UseBasicParsing -MaximumRedirection 0; ` -$mainManifestYaml = "pingcli-test.pingcli-test.yaml"; ` -$mainManifest = "https://raw.githubusercontent.com/pingidentity/pingcli/refs/heads/main/windows_manifests/${RELEASE_VERSION}/${mainManifestYaml}"; ` -Invoke-WebRequest -Method Get -Uri $mainManifest -OutFile "${pingcliPath}\${mainManifestYaml}" -UseBasicParsing -MaximumRedirection 0; ` -winget install -m "${pingcliPath}\" -``` - - ## Configure Ping CLI Before using the Ping CLI, you need to configure your Ping Identity Service profile(s). The following steps show the quickest path to configuration. From b4bc8f0ea07a3bb28703db298abe43d947982c4c Mon Sep 17 00:00:00 2001 From: wesleymccollam Date: Wed, 15 Jan 2025 16:05:29 -0500 Subject: [PATCH 4/6] script update --- README.md | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 45ab8e34..58674840 100644 --- a/README.md +++ b/README.md @@ -62,12 +62,11 @@ Use the following single-line powershell command to install Ping CLI into '%LOCA $latestReleaseUrl = Invoke-WebRequest -Uri "https://github.com/pingidentity/pingcli/releases/latest" -MaximumRedirection 0 -ErrorAction Ignore -UseBasicParsing; ` $RELEASE_VERSION = [System.IO.Path]::GetFileName($latestReleaseUrl.Headers.Location); ` $RELEASE_VERSION_NO_PREFIX = $RELEASE_VERSION -replace "^v", ""; ` -$uname = (uname -m); ` -$HARDWARE_PLATFORM = $uname -replace "aarch64", "arm64" -replace "x86_64", "amd64"; ` +$HARDWARE_PLATFORM = $env:PROCESSOR_ARCHITECTURE -replace "ARM", "arm64" -replace "ARM64", "arm64" -replace "x86", "amd64"; ` $URL = "https://github.com/pingidentity/pingcli/releases/download/${RELEASE_VERSION}/pingcli_${RELEASE_VERSION_NO_PREFIX}_windows_${HARDWARE_PLATFORM}.tar.gz" -Invoke-WebRequest -Uri $URL -OutFile pingcli.tar.gz; ` -tar -zxf pingcli.tar.gz -C "${env:LOCALAPPDATA}\Programs" pingcli.exe; ` -Remove-Item pingcli.tar.gz +Invoke-WebRequest -Uri $URL -OutFile "pingcli.tar.gz"; ` +tar -zxf "pingcli.tar.gz" -C "${env:LOCALAPPDATA}\Programs" pingcli.exe; ` +Remove-Item "pingcli.tar.gz" ``` ## Configure Ping CLI From ca0952840738362cf695014729d4ea0ba33540ba Mon Sep 17 00:00:00 2001 From: wesleymccollam Date: Thu, 16 Jan 2025 16:19:13 -0500 Subject: [PATCH 5/6] add 386 build, PowerShell script edits for multi-arch --- .goreleaser.yaml | 1 + README.md | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.goreleaser.yaml b/.goreleaser.yaml index 522dc88d..2c19c89f 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -39,6 +39,7 @@ builds: # # Default: [ '386', 'amd64', 'arm64' ] goarch: + - "386" - amd64 - arm64 diff --git a/README.md b/README.md index 58674840..640d3382 100644 --- a/README.md +++ b/README.md @@ -57,12 +57,12 @@ See [the latest GitHub release](https://github.com/pingidentity/pingcli/releases OR -Use the following single-line powershell command to install Ping CLI into '%LOCALAPPDATA%\Programs' directly. +Use the following single-line PowerShell 7.4 command to install Ping CLI into '%LOCALAPPDATA%\Programs' directly. ```powershell -$latestReleaseUrl = Invoke-WebRequest -Uri "https://github.com/pingidentity/pingcli/releases/latest" -MaximumRedirection 0 -ErrorAction Ignore -UseBasicParsing; ` +$latestReleaseUrl = Invoke-WebRequest -Uri "https://github.com/pingidentity/pingcli/releases/latest" -MaximumRedirection 0 -ErrorAction Ignore -UseBasicParsing -SkipHttpErrorCheck; ` $RELEASE_VERSION = [System.IO.Path]::GetFileName($latestReleaseUrl.Headers.Location); ` $RELEASE_VERSION_NO_PREFIX = $RELEASE_VERSION -replace "^v", ""; ` -$HARDWARE_PLATFORM = $env:PROCESSOR_ARCHITECTURE -replace "ARM", "arm64" -replace "ARM64", "arm64" -replace "x86", "amd64"; ` +$HARDWARE_PLATFORM = $env:PROCESSOR_ARCHITECTURE -replace "ARM", "arm64" -replace "ARM64", "arm64" -replace "x86", "amd64" -replace "AMD64", "amd64" -replace "EM64T", "amd64"; ` $URL = "https://github.com/pingidentity/pingcli/releases/download/${RELEASE_VERSION}/pingcli_${RELEASE_VERSION_NO_PREFIX}_windows_${HARDWARE_PLATFORM}.tar.gz" Invoke-WebRequest -Uri $URL -OutFile "pingcli.tar.gz"; ` tar -zxf "pingcli.tar.gz" -C "${env:LOCALAPPDATA}\Programs" pingcli.exe; ` From e43a3ca222dad74f665f9e3c4e7606c9b0316284 Mon Sep 17 00:00:00 2001 From: wesleymccollam Date: Thu, 16 Jan 2025 16:33:38 -0500 Subject: [PATCH 6/6] standardize double quotes in goreleaser yaml, multi-arch edits in README --- .goreleaser.yaml | 40 ++++++++++++++++++++-------------------- README.md | 2 +- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/.goreleaser.yaml b/.goreleaser.yaml index 2c19c89f..463893ad 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -12,7 +12,7 @@ builds: # Can be a path (e.g. `bin/app`) to wrap the binary in a directory. # # Default: Project directory name - binary: pingcli + binary: "pingcli" # Custom environment variables to be set during the builds. # Invalid environment variables will be ignored. @@ -21,7 +21,7 @@ builds: # Default: os.Environ() ++ env config section. # Templates: allowed. env: - - CGO_ENABLED=0 + - "CGO_ENABLED=0" # GOOS list to build for. # For more info refer to: https://golang.org/doc/install/source#environment @@ -29,9 +29,9 @@ builds: # # Default: [ 'darwin', 'linux', 'windows' ] goos: - - darwin - - linux - - windows + - "darwin" + - "linux" + - "windows" # GOARCH to build for. # For more info refer to: https://golang.org/doc/install/source#environment @@ -40,15 +40,15 @@ builds: # Default: [ '386', 'amd64', 'arm64' ] goarch: - "386" - - amd64 - - arm64 + - "amd64" + - "arm64" release: # If set to auto, will mark the release as not ready for production # in case there is an indicator for this in the tag e.g. v1.0.0-rc1 # If set to true, will mark the release as not ready for production. # Default is false. - prerelease: auto + prerelease: "auto" # If set to false, will NOT mark the release as "latest". # This prevents it from being shown at the top of the release list, @@ -69,7 +69,7 @@ release: # - `replace`: replace existing notes # # Default is `keep-existing`. - mode: append + mode: "append" checksum: # Algorithm to be used. @@ -90,7 +90,7 @@ checksum: # - blake2b # # Default: 'sha256'. - algorithm: sha256 + algorithm: "sha256" # If true, will create one checksum file for each artifact. split: true @@ -101,8 +101,8 @@ checksum: brews: - # Git author used to commit to the repository. commit_author: - name: goreleaserbot - email: bot@goreleaser.com + name: "goreleaserbot" + email: "bot@goreleaser.com" # The project name and current git tag are used in the format string. # @@ -110,7 +110,7 @@ brews: commit_msg_template: "Brew formula update for {{ .ProjectName }} version {{ .Tag }}" # Directory inside the repository to put the formula. - directory: Formula + directory: "Formula" # Caveats for the user of your binary. # caveats: "How to use this binary" @@ -138,7 +138,7 @@ brews: # in case there is an indicator for prerelease in the tag e.g. v1.0.0-rc1 # # Templates: allowed. - skip_upload: auto + skip_upload: "auto" # So you can `brew test` your formula. # @@ -152,12 +152,12 @@ brews: # Repository owner. # # Templates: allowed. - owner: pingidentity + owner: "pingidentity" # Repository name. # # Templates: allowed. - name: homebrew-tap + name: "homebrew-tap" token: "{{ .Env.GORELEASER_HOMEBREW_TAP_GITHUB_PAT}}" @@ -178,7 +178,7 @@ dockers: # GOARCH of the built binaries/packages that should be used. # Default: 'amd64'. - goarch: amd64 + goarch: "amd64" # Set the "backend" for the Docker pipe. # @@ -187,7 +187,7 @@ dockers: # Podman is a GoReleaser Pro feature and is only available on Linux. # # Default: 'docker'. - use: buildx + use: "buildx" # You can have multiple Docker images. # Templates of the Docker image names. @@ -205,7 +205,7 @@ dockers: # GOARCH of the built binaries/packages that should be used. # Default: 'amd64'. - goarch: arm64 + goarch: "arm64" # Set the "backend" for the Docker pipe. # @@ -214,7 +214,7 @@ dockers: # Podman is a GoReleaser Pro feature and is only available on Linux. # # Default: 'docker'. - use: buildx + use: "buildx" docker_manifests: # Name for the manifest. diff --git a/README.md b/README.md index 640d3382..5fc6a9de 100644 --- a/README.md +++ b/README.md @@ -62,7 +62,7 @@ Use the following single-line PowerShell 7.4 command to install Ping CLI into '% $latestReleaseUrl = Invoke-WebRequest -Uri "https://github.com/pingidentity/pingcli/releases/latest" -MaximumRedirection 0 -ErrorAction Ignore -UseBasicParsing -SkipHttpErrorCheck; ` $RELEASE_VERSION = [System.IO.Path]::GetFileName($latestReleaseUrl.Headers.Location); ` $RELEASE_VERSION_NO_PREFIX = $RELEASE_VERSION -replace "^v", ""; ` -$HARDWARE_PLATFORM = $env:PROCESSOR_ARCHITECTURE -replace "ARM", "arm64" -replace "ARM64", "arm64" -replace "x86", "amd64" -replace "AMD64", "amd64" -replace "EM64T", "amd64"; ` +$HARDWARE_PLATFORM = $env:PROCESSOR_ARCHITECTURE -replace "ARM64", "arm64" -replace "x86", "386" -replace "AMD64", "amd64" -replace "EM64T", "amd64"; ` $URL = "https://github.com/pingidentity/pingcli/releases/download/${RELEASE_VERSION}/pingcli_${RELEASE_VERSION_NO_PREFIX}_windows_${HARDWARE_PLATFORM}.tar.gz" Invoke-WebRequest -Uri $URL -OutFile "pingcli.tar.gz"; ` tar -zxf "pingcli.tar.gz" -C "${env:LOCALAPPDATA}\Programs" pingcli.exe; `