Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
module.exports = {
root: true,
parser: '@typescript-eslint/parser',
plugins: ['@typescript-eslint'],
extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended', 'prettier'],
rules: {
'@typescript-eslint/typedef': [
'error',
{
memberVariableDeclaration: true,
variableDeclaration: true,
objectDestructuring: true,
propertyDeclaration: true,
parameter: true
}
],
'prefer-const': 'off',
'no-extra-boolean-cast': 'off',
'@typescript-eslint/no-inferrable-types': 'off',
'@typescript-eslint/no-explicit-any': 'off'
},
overrides: [
{
files: ['*.test.ts'],
rules: {
'@typescript-eslint/no-non-null-assertion': 'off'
}
}
]
};
22 changes: 22 additions & 0 deletions .github/workflows/actions_release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: Release GitHub Actions

on:
workflow_dispatch:
inputs:
tag:
description: "Tag for the release"
required: true

permissions:
contents: read

jobs:
release:
permissions:
actions: read
id-token: write
contents: write

uses: step-security/reusable-workflows/.github/workflows/actions_release.yaml@v1
with:
tag: "${{ github.event.inputs.tag }}"
28 changes: 28 additions & 0 deletions .github/workflows/audit_package.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: NPM Audit Fix Run

on:
workflow_dispatch:
inputs:
force:
description: "Use --force flag for npm audit fix?"
required: true
type: boolean
base_branch:
description: "Specify a base branch"
required: false
default: "main"
schedule:
- cron: "0 0 * * 1"

jobs:
audit-fix:
uses: step-security/reusable-workflows/.github/workflows/audit_fix.yml@v1
with:
force: ${{ inputs.force || false }}
base_branch: ${{ inputs.base_branch || 'main' }}

permissions:
contents: write
pull-requests: write
packages: read
issues: write
33 changes: 33 additions & 0 deletions .github/workflows/auto_cherry_pick.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: Auto Cherry-Pick from Upstream

on:
workflow_dispatch:
inputs:
base_branch:
description: "Base branch to create the PR against"
required: true
default: "main"
mode:
description: "Run mode: cherry-pick or verify"
required: false
default: "cherry-pick"

pull_request:
types: [opened, synchronize, labeled]

permissions:
contents: write
pull-requests: write
packages: read
issues: write

jobs:
cherry-pick:
uses: step-security/reusable-workflows/.github/workflows/auto_cherry_pick.yaml@v1
if: github.event_name == 'workflow_dispatch' || contains(fromJson(toJson(github.event.pull_request.labels)).*.name, 'review-required')
with:
original-owner: "jfrog"
repo-name: "setup-jfrog-cli"
base_branch: ${{ inputs.base_branch }}
mode: ${{ github.event_name == 'pull_request' && 'verify' || inputs.mode }}

14 changes: 14 additions & 0 deletions .github/workflows/guarddog.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
name: Run GuardDog Scan on PRs

on:
push:
branches: [main]
pull_request:
branches: [main]

permissions:
contents: read

jobs:
call-guarddog-scan:
uses: step-security/reusable-workflows/.github/workflows/guarddog.yml@v1
57 changes: 57 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
name: "Test"
on:
push:
branches:
- 'main'
pull_request:
jobs:
test:
name: Test (${{ matrix.os }}) - (CLI ${{ matrix.cli-version || 'default' }})
runs-on: ${{ matrix.os }}

strategy:
matrix:
os: ${{ github.actor == 'dependabot[bot]' && fromJSON('["ubuntu-latest"]') || fromJSON('["ubuntu-latest", "macos-13", "windows-latest"]') }}
cli-version: [ "", "latest", "1.46.4" ]
fail-fast: false
steps:
# Checkout and install prerequisites
- name: Checkout
uses: actions/checkout@v6
- name: Setup NodeJS
uses: actions/setup-node@v6
with:
node-version: "20.x"

# Run action according to the input version
- name: Setup JFrog CLI
if: matrix.cli-version != ''
uses: ./
with:
version: ${{ matrix.cli-version }}
- name: Setup default JFrog CLI
if: matrix.cli-version == ''
uses: ./

# Run --version
- name: Check versions
run: jf --version && jfrog --version

# Check local server successfully configured
- name: Sanity
run: jf c show local || jfrog rt config show local

# Check build URL
- name: Check build URL
run: curl -I "$JFROG_CLI_BUILD_URL"
shell: bash

# Check environment variables
- name: Check action environment
run: node scripts/check-env.js

# Install and run tests
- name: Install
run: npm i
- name: Unit tests
run: npm t
16 changes: 16 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# IDEs
.idea
.vscode
*.iml

node_modules
__tests__/runner/*

lib

# Vim
*~
*.swp

# IOS
*.DS_Store
5 changes: 5 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"printWidth": 150,
"singleQuote": true,
"tabWidth": 4
}
Loading
Loading