Compare commits

...

2 Commits

Author SHA1 Message Date
e35135e4e3 test 2025-04-08 17:08:56 -04:00
c95dd69167 test upload 2025-04-08 16:58:35 -04:00
3 changed files with 200 additions and 198 deletions

View File

@ -12,75 +12,75 @@ permissions:
contents: write
jobs:
cli-integration-tests:
name: Run tests before deployment
uses: ./.github/workflows/run-cli-tests.yml
secrets:
CLI_TESTS_UA_CLIENT_ID: ${{ secrets.CLI_TESTS_UA_CLIENT_ID }}
CLI_TESTS_UA_CLIENT_SECRET: ${{ secrets.CLI_TESTS_UA_CLIENT_SECRET }}
CLI_TESTS_SERVICE_TOKEN: ${{ secrets.CLI_TESTS_SERVICE_TOKEN }}
CLI_TESTS_PROJECT_ID: ${{ secrets.CLI_TESTS_PROJECT_ID }}
CLI_TESTS_ENV_SLUG: ${{ secrets.CLI_TESTS_ENV_SLUG }}
CLI_TESTS_USER_EMAIL: ${{ secrets.CLI_TESTS_USER_EMAIL }}
CLI_TESTS_USER_PASSWORD: ${{ secrets.CLI_TESTS_USER_PASSWORD }}
CLI_TESTS_INFISICAL_VAULT_FILE_PASSPHRASE: ${{ secrets.CLI_TESTS_INFISICAL_VAULT_FILE_PASSPHRASE }}
# cli-integration-tests:
# name: Run tests before deployment
# uses: ./.github/workflows/run-cli-tests.yml
# secrets:
# CLI_TESTS_UA_CLIENT_ID: ${{ secrets.CLI_TESTS_UA_CLIENT_ID }}
# CLI_TESTS_UA_CLIENT_SECRET: ${{ secrets.CLI_TESTS_UA_CLIENT_SECRET }}
# CLI_TESTS_SERVICE_TOKEN: ${{ secrets.CLI_TESTS_SERVICE_TOKEN }}
# CLI_TESTS_PROJECT_ID: ${{ secrets.CLI_TESTS_PROJECT_ID }}
# CLI_TESTS_ENV_SLUG: ${{ secrets.CLI_TESTS_ENV_SLUG }}
# CLI_TESTS_USER_EMAIL: ${{ secrets.CLI_TESTS_USER_EMAIL }}
# CLI_TESTS_USER_PASSWORD: ${{ secrets.CLI_TESTS_USER_PASSWORD }}
# CLI_TESTS_INFISICAL_VAULT_FILE_PASSPHRASE: ${{ secrets.CLI_TESTS_INFISICAL_VAULT_FILE_PASSPHRASE }}
npm-release:
runs-on: ubuntu-latest
env:
working-directory: ./npm
needs:
- cli-integration-tests
- goreleaser
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
# npm-release:
# runs-on: ubuntu-latest
# env:
# working-directory: ./npm
# needs:
# - cli-integration-tests
# - goreleaser
# steps:
# - uses: actions/checkout@v3
# with:
# fetch-depth: 0
- name: Extract version
run: |
VERSION=$(echo ${{ github.ref_name }} | sed 's/infisical-cli\/v//')
echo "Version extracted: $VERSION"
echo "CLI_VERSION=$VERSION" >> $GITHUB_ENV
# - name: Extract version
# run: |
# VERSION=$(echo ${{ github.ref_name }} | sed 's/infisical-cli\/v//')
# echo "Version extracted: $VERSION"
# echo "CLI_VERSION=$VERSION" >> $GITHUB_ENV
- name: Print version
run: echo ${{ env.CLI_VERSION }}
# - name: Print version
# run: echo ${{ env.CLI_VERSION }}
- name: Setup Node
uses: actions/setup-node@8f152de45cc393bb48ce5d89d36b731f54556e65 # v4.0.0
with:
node-version: 20
cache: "npm"
cache-dependency-path: ./npm/package-lock.json
- name: Install dependencies
working-directory: ${{ env.working-directory }}
run: npm install --ignore-scripts
# - name: Setup Node
# uses: actions/setup-node@8f152de45cc393bb48ce5d89d36b731f54556e65 # v4.0.0
# with:
# node-version: 20
# cache: "npm"
# cache-dependency-path: ./npm/package-lock.json
# - name: Install dependencies
# working-directory: ${{ env.working-directory }}
# run: npm install --ignore-scripts
- name: Set NPM version
working-directory: ${{ env.working-directory }}
run: npm version ${{ env.CLI_VERSION }} --allow-same-version --no-git-tag-version
# - name: Set NPM version
# working-directory: ${{ env.working-directory }}
# run: npm version ${{ env.CLI_VERSION }} --allow-same-version --no-git-tag-version
- name: Setup NPM
working-directory: ${{ env.working-directory }}
run: |
echo 'registry="https://registry.npmjs.org/"' > ./.npmrc
echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" >> ./.npmrc
# - name: Setup NPM
# working-directory: ${{ env.working-directory }}
# run: |
# echo 'registry="https://registry.npmjs.org/"' > ./.npmrc
# echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" >> ./.npmrc
echo 'registry="https://registry.npmjs.org/"' > ~/.npmrc
echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" >> ~/.npmrc
env:
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
# echo 'registry="https://registry.npmjs.org/"' > ~/.npmrc
# echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" >> ~/.npmrc
# env:
# NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
- name: Pack NPM
working-directory: ${{ env.working-directory }}
run: npm pack
# - name: Pack NPM
# working-directory: ${{ env.working-directory }}
# run: npm pack
- name: Publish NPM
working-directory: ${{ env.working-directory }}
run: npm publish --tarball=./infisical-sdk-${{github.ref_name}} --access public --registry=https://registry.npmjs.org/
env:
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
# - name: Publish NPM
# working-directory: ${{ env.working-directory }}
# run: npm publish --tarball=./infisical-sdk-${{github.ref_name}} --access public --registry=https://registry.npmjs.org/
# env:
# NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
# NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
goreleaser:
runs-on: ubuntu-latest

View File

@ -16,23 +16,23 @@ monorepo:
dir: cli
builds:
- id: darwin-build
binary: infisical
ldflags:
- -X github.com/Infisical/infisical-merge/packages/util.CLI_VERSION={{ .Version }}
- -X github.com/Infisical/infisical-merge/packages/telemetry.POSTHOG_API_KEY_FOR_CLI={{ .Env.POSTHOG_API_KEY_FOR_CLI }}
flags:
- -trimpath
env:
- CGO_ENABLED=1
- CC=/home/runner/work/osxcross/target/bin/o64-clang
- CXX=/home/runner/work/osxcross/target/bin/o64-clang++
goos:
- darwin
ignore:
- goos: darwin
goarch: "386"
dir: ./cli
# - id: darwin-build
# binary: infisical
# ldflags:
# - -X github.com/Infisical/infisical-merge/packages/util.CLI_VERSION={{ .Version }}
# - -X github.com/Infisical/infisical-merge/packages/telemetry.POSTHOG_API_KEY_FOR_CLI={{ .Env.POSTHOG_API_KEY_FOR_CLI }}
# flags:
# - -trimpath
# env:
# - CGO_ENABLED=1
# - CC=/home/runner/work/osxcross/target/bin/o64-clang
# - CXX=/home/runner/work/osxcross/target/bin/o64-clang++
# goos:
# - darwin
# ignore:
# - goos: darwin
# goarch: "386"
# dir: ./cli
- id: all-other-builds
env:
@ -44,11 +44,11 @@ builds:
flags:
- -trimpath
goos:
- freebsd
# - freebsd
- linux
- netbsd
- openbsd
- windows
# - netbsd
# - openbsd
# - windows
goarch:
- "386"
- amd64
@ -75,8 +75,10 @@ archives:
- ../completions/*
release:
replace_existing_draft: true
mode: "replace"
# replace_existing_draft: true
# mode: "replace"
disable: true
skip_upload: true
checksum:
name_template: "checksums.txt"
@ -91,39 +93,39 @@ snapshot:
# dir: "{{ dir .ArtifactPath }}"
# cmd: curl -F package=@{{ .ArtifactName }} https://{{ .Env.FURY_TOKEN }}@push.fury.io/infisical/
brews:
- name: infisical
tap:
owner: Infisical
name: homebrew-get-cli
commit_author:
name: "Infisical"
email: ai@infisical.com
folder: Formula
homepage: "https://infisical.com"
description: "The official Infisical CLI"
install: |-
bin.install "infisical"
bash_completion.install "completions/infisical.bash" => "infisical"
zsh_completion.install "completions/infisical.zsh" => "_infisical"
fish_completion.install "completions/infisical.fish"
man1.install "manpages/infisical.1.gz"
- name: "infisical@{{.Version}}"
tap:
owner: Infisical
name: homebrew-get-cli
commit_author:
name: "Infisical"
email: ai@infisical.com
folder: Formula
homepage: "https://infisical.com"
description: "The official Infisical CLI"
install: |-
bin.install "infisical"
bash_completion.install "completions/infisical.bash" => "infisical"
zsh_completion.install "completions/infisical.zsh" => "_infisical"
fish_completion.install "completions/infisical.fish"
man1.install "manpages/infisical.1.gz"
# brews:
# - name: infisical
# tap:
# owner: Infisical
# name: homebrew-get-cli
# commit_author:
# name: "Infisical"
# email: ai@infisical.com
# folder: Formula
# homepage: "https://infisical.com"
# description: "The official Infisical CLI"
# install: |-
# bin.install "infisical"
# bash_completion.install "completions/infisical.bash" => "infisical"
# zsh_completion.install "completions/infisical.zsh" => "_infisical"
# fish_completion.install "completions/infisical.fish"
# man1.install "manpages/infisical.1.gz"
# - name: "infisical@{{.Version}}"
# tap:
# owner: Infisical
# name: homebrew-get-cli
# commit_author:
# name: "Infisical"
# email: ai@infisical.com
# folder: Formula
# homepage: "https://infisical.com"
# description: "The official Infisical CLI"
# install: |-
# bin.install "infisical"
# bash_completion.install "completions/infisical.bash" => "infisical"
# zsh_completion.install "completions/infisical.zsh" => "_infisical"
# fish_completion.install "completions/infisical.fish"
# man1.install "manpages/infisical.1.gz"
nfpms:
- id: infisical
@ -136,10 +138,10 @@ nfpms:
description: The offical Infisical CLI
license: MIT
formats:
- rpm
# - rpm
- deb
- apk
- archlinux
# - apk
# - archlinux
bindir: /usr/bin
contents:
- src: ./completions/infisical.bash
@ -151,73 +153,73 @@ nfpms:
- src: ./manpages/infisical.1.gz
dst: /usr/share/man/man1/infisical.1.gz
scoop:
bucket:
owner: Infisical
name: scoop-infisical
commit_author:
name: "Infisical"
email: ai@infisical.com
homepage: "https://infisical.com"
description: "The official Infisical CLI"
license: MIT
# scoop:
# bucket:
# owner: Infisical
# name: scoop-infisical
# commit_author:
# name: "Infisical"
# email: ai@infisical.com
# homepage: "https://infisical.com"
# description: "The official Infisical CLI"
# license: MIT
aurs:
- name: infisical-bin
homepage: "https://infisical.com"
description: "The official Infisical CLI"
maintainers:
- Infisical, Inc <support@infisical.com>
license: MIT
private_key: "{{ .Env.AUR_KEY }}"
git_url: "ssh://aur@aur.archlinux.org/infisical-bin.git"
package: |-
# bin
install -Dm755 "./infisical" "${pkgdir}/usr/bin/infisical"
# license
install -Dm644 "./LICENSE" "${pkgdir}/usr/share/licenses/infisical/LICENSE"
# completions
mkdir -p "${pkgdir}/usr/share/bash-completion/completions/"
mkdir -p "${pkgdir}/usr/share/zsh/site-functions/"
mkdir -p "${pkgdir}/usr/share/fish/vendor_completions.d/"
install -Dm644 "./completions/infisical.bash" "${pkgdir}/usr/share/bash-completion/completions/infisical"
install -Dm644 "./completions/infisical.zsh" "${pkgdir}/usr/share/zsh/site-functions/_infisical"
install -Dm644 "./completions/infisical.fish" "${pkgdir}/usr/share/fish/vendor_completions.d/infisical.fish"
# man pages
install -Dm644 "./manpages/infisical.1.gz" "${pkgdir}/usr/share/man/man1/infisical.1.gz"
# aurs:
# - name: infisical-bin
# homepage: "https://infisical.com"
# description: "The official Infisical CLI"
# maintainers:
# - Infisical, Inc <support@infisical.com>
# license: MIT
# private_key: "{{ .Env.AUR_KEY }}"
# git_url: "ssh://aur@aur.archlinux.org/infisical-bin.git"
# package: |-
# # bin
# install -Dm755 "./infisical" "${pkgdir}/usr/bin/infisical"
# # license
# install -Dm644 "./LICENSE" "${pkgdir}/usr/share/licenses/infisical/LICENSE"
# # completions
# mkdir -p "${pkgdir}/usr/share/bash-completion/completions/"
# mkdir -p "${pkgdir}/usr/share/zsh/site-functions/"
# mkdir -p "${pkgdir}/usr/share/fish/vendor_completions.d/"
# install -Dm644 "./completions/infisical.bash" "${pkgdir}/usr/share/bash-completion/completions/infisical"
# install -Dm644 "./completions/infisical.zsh" "${pkgdir}/usr/share/zsh/site-functions/_infisical"
# install -Dm644 "./completions/infisical.fish" "${pkgdir}/usr/share/fish/vendor_completions.d/infisical.fish"
# # man pages
# install -Dm644 "./manpages/infisical.1.gz" "${pkgdir}/usr/share/man/man1/infisical.1.gz"
dockers:
- dockerfile: docker/alpine
goos: linux
goarch: amd64
use: buildx
ids:
- all-other-builds
image_templates:
- "infisical/cli:{{ .Major }}.{{ .Minor }}.{{ .Patch }}-amd64"
- "infisical/cli:latest-amd64"
build_flag_templates:
- "--pull"
- "--platform=linux/amd64"
- dockerfile: docker/alpine
goos: linux
goarch: amd64
use: buildx
ids:
- all-other-builds
image_templates:
- "infisical/cli:{{ .Major }}.{{ .Minor }}.{{ .Patch }}-arm64"
- "infisical/cli:latest-arm64"
build_flag_templates:
- "--pull"
- "--platform=linux/arm64"
# dockers:
# - dockerfile: docker/alpine
# goos: linux
# goarch: amd64
# use: buildx
# ids:
# - all-other-builds
# image_templates:
# - "infisical/cli:{{ .Major }}.{{ .Minor }}.{{ .Patch }}-amd64"
# - "infisical/cli:latest-amd64"
# build_flag_templates:
# - "--pull"
# - "--platform=linux/amd64"
# - dockerfile: docker/alpine
# goos: linux
# goarch: amd64
# use: buildx
# ids:
# - all-other-builds
# image_templates:
# - "infisical/cli:{{ .Major }}.{{ .Minor }}.{{ .Patch }}-arm64"
# - "infisical/cli:latest-arm64"
# build_flag_templates:
# - "--pull"
# - "--platform=linux/arm64"
docker_manifests:
- name_template: "infisical/cli:{{ .Major }}.{{ .Minor }}.{{ .Patch }}"
image_templates:
- "infisical/cli:{{ .Major }}.{{ .Minor }}.{{ .Patch }}-amd64"
- "infisical/cli:{{ .Major }}.{{ .Minor }}.{{ .Patch }}-arm64"
- name_template: "infisical/cli:latest"
image_templates:
- "infisical/cli:latest-amd64"
- "infisical/cli:latest-arm64"
# docker_manifests:
# - name_template: "infisical/cli:{{ .Major }}.{{ .Minor }}.{{ .Patch }}"
# image_templates:
# - "infisical/cli:{{ .Major }}.{{ .Minor }}.{{ .Patch }}-amd64"
# - "infisical/cli:{{ .Major }}.{{ .Minor }}.{{ .Patch }}-arm64"
# - name_template: "infisical/cli:latest"
# image_templates:
# - "infisical/cli:latest-amd64"
# - "infisical/cli:latest-arm64"

View File

@ -1,13 +1,13 @@
cd dist
for i in *.apk; do
[ -f "$i" ] || break
cloudsmith push alpine --republish infisical/infisical-cli/alpine/any-version $i
done
# for i in *.apk; do
# [ -f "$i" ] || break
# cloudsmith push alpine --republish infisical/infisical-cli/alpine/any-version $i
# done
for i in *.deb; do
[ -f "$i" ] || break
cloudsmith push deb --republish infisical/infisical-cli/any-distro/any-version $i
done
# for i in *.deb; do
# [ -f "$i" ] || break
# cloudsmith push deb --republish infisical/infisical-cli/any-distro/any-version $i
# done
for i in *.deb; do
[ -f "$i" ] || break
@ -15,7 +15,7 @@ for i in *.deb; do
done
for i in *.rpm; do
[ -f "$i" ] || break
cloudsmith push rpm --republish infisical/infisical-cli/any-distro/any-version $i
done
# for i in *.rpm; do
# [ -f "$i" ] || break
# cloudsmith push rpm --republish infisical/infisical-cli/any-distro/any-version $i
# done