Only this pageAll pages
Powered by GitBook
Couldn't generate the PDF for 122 pages, generation stopped at 100.
Extend with 50 more pages.
1 of 100

JFrog Applications

Loading...

JFrog Applications

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

JFrog CLI

JFrog CLI documentation has moved. You can view it at is new location here.

JFrog Applications

The JFrog Applications content has moved to a new location. You can view that content in its new location here.

Download and Install

Installation instructions for CLI documentation has moved. You can view it at is new location .

here

Authentication

Instructions for authenticating via the CLI has moved. You can view it at its new location here.

Shell Auto Completion

Documentation on JFrog CLI's auto-completion scripts has moved. You can view it at its new location here.

Configurations

Documentation on CLI configuration has moved. You can view it in its new location here.

JFrog Platform Configuration

Information about working configuring JFrog Platform CLI has moved. You can view it in its new location here.

Proxy Support

Documentation on proxy support for the JFrog CLI has moved. You can view it in its new location here.

Binaries Management with JFrog Artifactory

Documentation on managing binaries in JFrog via the CLI has moved. You can view it in its new location here.

Environment Variables

Documentation on Artifactory environment variables has moved. You can view it in its new location here.

Authentication

Information on options for authenticating via the JFrog CLI has moved. You can view it in its new location here.

Verifying Artifactory's Accessibility

Instructions on verifying Artifactory's accessibility via the CLI have moved. You can view it in its new location here.

Using File Specs

Information regarding options for performing complex operations via CLI using the -spec option have moved. You can view them in their new location here.

Build Integration

Documentation regarding integrating build management with JFrog CLI has moved. You can view it in its new location here.

Package Managers Integration

Documentation regarding integrating the JFrog CLI with various package managers has moved. You can view it in its new location here.

Managing Configuration Entities

Documentation managing Artifactory configuration entities via the JFrog CLI has moved. You can view it in its new location here.

Release Lifecycle Management

Documentation on using JFrog CLI with Release Lifecycle Management has moved. You can view it in its new location here.

Cleaning Up Unreferenced Files from a Git LFS Repository

Documentation on cleaning up files from a Git LFS repository has moved. You can view it at its new location here.

Download Updates for Xray's Database

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Scan your code dependencies

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

CLI for JFrog Distribution

Documentation on the JFrog CLI for Distribution has moved. You can view it at its new location here.

CLI for JFrog Cloud Transfer

Documentation on migrating from a self-hosted to cloud deploying using the CLI has moved. You can view it in its new location here.

Initialize JFrog Worker

Documentation on the JFrog command for initializing a new JFrog worker has moved. You can view it at its new location here.

Test-Run JFrog Worker

Documentation for using the JFrog CLI to test-run a Worker has moved. You can see it at its new location here.

Add Secrets to JFrog Worker

Documentation on using the JFrog CLI to edit a worker and add or edit a secret has moved. You can view it at its new location here.

Show Worker Execution History

Documentation on how to display the execution history of a specific worker has moved. You can view it at its new location here.

Edit Worker Schedule

Documentation on how to edit the Worker schedule via the JFrog CLI has moved. You can view it at its new location here.

JFrog CLI Plugins

Documentation on JFrog CLI plugins has moved. You can view it at its new location here.

VS Code Prerequsites Per Language

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Supported Technologies

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Quick Start

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Manage VS Code IDE

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

How Tos

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

JetBrains IDEs

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Supported Technologies

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Install the JFrog IDEA Plugin

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Plugin Configuration

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Scan Gradle Projects with the JFrog Eclipse IDE Plugin

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

CLI for JFrog Security

The JFrog Security documentation has a new home! You can now find it , including sections on:

How Tos

The JFrog Security documentation has a new home! You can now find it , including sections on:

JFrog Curation

The JFrog Security documentation has a new home! You can now find it , including sections on:

CLI for JFrog Platform Services

Documentation on using JFrog CLI with JFrog Platform Services has moved. You can view it at its new location .

List Available Events

Documentation on how to list all the available events via the JFrog CLI has moved. You can view it at its new location .

List Registered Workers

Documentation on how to list workers saved on your Artifactory instance has moved. You can view it at its new location .

IDE

The JFrog Security documentation has a new home! You can now find it , including sections on:

Ignore Findings

The JFrog Security documentation has a new home! You can now find it , including sections on:

Supported Technologies

The JFrog Security documentation has a new home! You can now find it , including sections on:

Troubleshooting

The JFrog Security documentation has a new home! You can now find it , including sections on:

Resolve Issues

The JFrog Security documentation has a new home! You can now find it , including sections on:

Generic Files

Documentation on uploading and managing files via the JFrog CLI have moved. You can view it at its new location .

Visual Studio Code

The JFrog Security documentation has a new home! You can now find it , including sections on:

Evidence Service

Documentation on creating and attaching evidence via the JFrog CLI has moved. You can view it in its new location .

Connect VS Code to the JFrog Platform

The JFrog Security documentation has a new home! You can now find it , including sections on:

Visual Studio

The JFrog Security documentation has a new home! You can now find it , including sections on:

Connect the JFrog Plugin to the JFrog Platform

The JFrog Security documentation has a new home! You can now find it , including sections on:

Setup Frogbot Using GitHub Actions

Install Frogbot on GitHub using GitHub Actions

The JFrog Security documentation has a new home! You can now find it , including sections on:

Install the JFrog VS Code Extension

The JFrog Security documentation has a new home! You can now find it , including sections on:

Install and Setup of the JFrog Eclipse IDE Plugin

The JFrog Security documentation has a new home! You can now find it , including sections on:

cURL Integration

Documentation on using the cURL command with Artifactory, and its related parameters has moved. You can view it in its new location .

Scan GitHub Pull Request

The JFrog Security documentation has a new home! You can now find it , including sections on:

Install and Setup the JFrog Visual Studio Extension

The JFrog Security documentation has a new home! You can now find it , including sections on:

Using Placeholders

Documentation on using placeholders with the JFrog CLI has moved. You can view it in its new location .

Scan Git Repositories

The JFrog Security documentation has a new home! You can now find it , including sections on:

Setup Frogbot Using Azure Pipelines

The JFrog Security documentation has a new home! You can now find it , including sections on:

Undeploy JFrog Worker

Documentation on using the JFrog CLI to undeploy a worker has moved. You can view it at its new location .

Analyze your Results

The JFrog Security documentation has a new home! You can now find it , including sections on:

Scan GitLab Pull Request

The JFrog Security documentation has a new home! You can now find it , including sections on:

Scan Git Repository Full Template

The JFrog Security documentation has a new home! You can now find it , including sections on:

Setup Frogbot Using JFrog Pipelines

The JFrog Security documentation has a new home! You can now find it , including sections on:

Use the JFrog Visual Studio Extension

The JFrog Security documentation has a new home! You can now find it , including sections on:

Transferring Files Between Artifactory Servers

Documentation on transferring files stored in one Artifactory instance to another has moved. You can view it in its new location .

Setup Frogbot Using Jenkins

The JFrog Security documentation has a new home! You can now find it , including sections on:

Supported Technologies

The JFrog Security documentation has a new home! You can now find it , including sections on:

Execute an HTTP-Triggered Worker

Documentation on how to execute an HTTP-triggered worker via the JFrog CLI has moved. You can view the content in its new location .

View Security Alerts on GitHub

The JFrog Security documentation has a new home! You can now find it , including sections on:

Scan Published Builds

The JFrog Security documentation has a new home! You can now find it , including sections on:

Scan Pull Requests

The JFrog Security documentation has a new home! You can now find it , including sections on:

Scan Pull Request Full Template

The JFrog Security documentation has a new home! You can now find it , including sections on:

OIDC Authentication

Authenticating using OpenID Connect (OIDC)

The JFrog Security documentation has a new home! You can now find it , including sections on:

Setup Frogbot Using GitLab CI

Install Frogbot on GitLab repositories using GitLab CI

The JFrog Security documentation has a new home! You can now find it , including sections on:

CLI Command Summaries

Documentation on the command summaries feature for recording JFrog CLI command outputs has moved. You can view it at its new location .

JFrog CLI Environment Variables

Documentation on JFrog CLI environment variables for installation has moved. You can view it at its new location .

Scan your Binaries

The JFrog Security documentation has a new home! You can now find it , including sections on:

Setup

The JFrog Security documentation has a new home! You can now find it , including sections on:

here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
here
here
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
here
CLI
Frogbot
IDEs
here
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs
here
here
here
CLI
Frogbot
IDEs
here
CLI
Frogbot
IDEs

Eclipse

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Storing Symlinks in Artifactory

Documentation about uploading and downloading symlinks (soft links) between your local file system and Artifactory has moved. You can view it in its new location here.

Using the JFrog Plugin in the JetBrains IDEs

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Deploy JFrog Worker

Documentation on using the JFrog CLI to deploy a JFrog worker has moved. You can view it at its new location here.

Frogbot Configuration

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

JFrog Frogbot

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Use the JFrog Eclipse IDE Plugin

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Scan Azure Repos Pull Request

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Count Contributing Developers

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Enrich your SBOM JSONs & XMLs

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Scan Execution

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Supported Technologies

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

GitLab Full Template

The JFrog Security documentation has a new home! You can now find it here, including sections on:

  • CLI

  • Frogbot

  • IDEs

Apply Xray Policies and Watches

The JFrog Security documentation has a new home! You can now find it , including sections on:

here
CLI
Frogbot
IDEs

JFrog CLI Plugins Developer Guide

Overview

JFrog CLI Plugins allow enhancing the functionality of JFrog CLI to meet the specific user and organization needs. The source code of a plugin is maintained as an open source Go project on GitHub. All public plugins are registered in JFrog CLI's Plugins Registry. We encourage you, as developers, to create plugins and share them publicly with the rest of the community. When a plugin is included in the registry, it becomes publicly available and can be installed using JFrog CLI. Version 1.41.1 or above is required. Plugins can be installed using the following JFrog CLI command:

This article guides you through the process of creating and publishing your own JFrog CLI Plugin.

Creating your first plugin

Prepare your development machine

  • Make sure Go 1.17 or above is installed on your local machine and is included in your system PATH.

  • Make sure git is installed on your local machine and is included in your system PATH.

Build and run your first plugin

  1. Go to .

  2. Press the Use this template button to create a new repository. You may name it as you like.

  3. Clone your new repository to your local machine. For example:

  1. Run the following commands, to build and run the template plugin.

  1. Open the plugin code with your favorite IDE and start having fun.

What can plugins do?

Well, plugins can do almost anything. The sky is the limit.

  1. You have access to most of the JFrog CLI code base. This is because your plugin code depends on the module. It is a dependency declared in your project's go.mod file. Feel free to explore the jfrog-cli-core code base, and use it as part of your plugin.

  2. You can also add other Go packages to your go.mod and use them in your code.

  3. You can package any external resources, such as executables or configuration files, and have them published alongside your plugin. Read more about this

Including plugins in the official registry

General

To make a new plugin available for anyone to use, you need to register the plugin in the JFrog CLI Plugins Registry. The registry is hosted in . The registry includes a descriptor file in YAML format for each registered plugin, inside the plugins directory. To include your plugin in the registry, create a pull request to add the plugin descriptor file for your plugin according to this file name format: your-plugin-name.yml.

Guidelines for developing and publishing plugins

To publish your plugin, you need to include it in . Please make sure your plugin meets the following guidelines before publishing it.

  • Read the document. You'll be asked to accept it before your plugin becomes available.

  • Code structure. Make sure the plugin code is structured similarly to the . Specifically, it should include a commands package, and a separate file for each command.

  • Tests. The plugin code should include a series of thorough tests. Use the as a reference on how the tests should be included as part of the source code. The tests should be executed using the following Go command while inside the root directory of the plugin project. Note: The Registry verifies the plugin and tries to run your plugin tests using the following command.

Important notes

  • Please make sure that the extension of your plugin descriptor file is yml and not yaml.

  • Please make sure your pull request includes only one or more plugin descriptors. Please do not add, edit or remove other files.

YAML format example

  • pluginName - The name of the plugin. This name should match the plugin name set in the plugin's code.

  • version - The version of the plugin. This version should have a v prefix and match the version set in the plugin's code.

  • repository - The plugin's code GitHub repository URL.

Publishing a new version of a published plugin

To publish a new version of your plugin, all you need to do is create a pull request, which updates the version inside your plugin descriptor file. If needed, your change can also include either the branch or tag.

Setting up a private plugins registry

In addition to the public official JFrog CLI Plugins Registry, JFrog CLI supports publishing and installing plugins to and from private JFrog CLI Plugins Registries. A private registry can be hosted on any Artifactory server. It uses a local generic Artifactory repository for storing the plugins.

To create your own private plugins registry, follow these steps.

  • On your Artifactory server, create a local generic repository named jfrog-cli-plugins.

  • Make sure your Artifactory server is included in JFrog CLI's configuration, by running the jf c show command.

  • If needed, configure your Artifactory instance using the jf c add command.

To publish a plugin to the private registry, run the following command, while inside the root of the plugin's sources directory. This command will build the sources of the plugin for all the supported operating systems. All binaries will be uploaded to the configured registry.

jf plugin publish the-plugin-name the-plugin-version

Testing your plugin before publishing it

When installing a plugin using the jf plugin install command, the plugin is downloaded into its own directory under the plugins directory, which is located under the JFrog CLI home directory. By default, you can find the plugins directory under ~/.jfrog/plugins/. So if for example you are developing a plugin named my-plugin, and you'd like to test it with JFrog CLI before publishing it, you'll need to place your plugin's executable, named my-plugin, under the following path -

If your plugin also uses , you should place the resources under the following path -

Once the plugin's executable is there, you'll be able to see it is installed by just running jf.

Having your plugin use external resources

General

In some cases your plugin may need to use external resources. For example, the plugin code may need to run an executable or read from a configuration file. You would therefore want these resources to be packaged together with the plugin, so that when it is installed, these resources are also downloaded and become available for the plugin.

How can you add resources to your plugin?

The way to include resources for your plugin, is to simply place them inside a directory named resources at the root of the plugin's sources directory. You can create any directory structure inside resources. When publishing the plugin, the content of the resources directory is published alongside the plugin executable. When installing the plugin, the resources are also downloaded.

How can your plugin code access the resources?

When installing a plugin, the plugin's resources are downloaded the following directory under the JFrog CLI home -

This means that during development, you'll need to make sure the resources are placed there, so that your plugin code can access them. Here's how your plugin code can access the resources directory -

$ jf plugin install the-plugin-name
go vet -v ./... && go test -v ./...
  • Code formatting. To make sure the code formatted properly, run the following go command on your plugin sources, while inside the root of your project directory. go fmt ./...

  • Plugin name. The plugin name should include only lower-case characters, numbers and dashes. The name length should not exceed 30 characters. It is recommended to use a short name for the users' convenience, but also make sure that its name hints on its functionality.

  • Create a Readme. Make sure that your plugin code includes a README.md file and place it in the root of the repository. The README needs to be structured according to the jfrog-cli-plugin-template README. It needs to include all the information and relevant details for the relevant plugin users.

  • Consider create a tag for your plugin sources. Although this is not mandatory, we recommend creating a tag for your GitHub repository before publishing the plugin. You can then provide this tag to the Registry when publishing the plugin, to make sure the correct code is built.

  • Plugin version. Make sure that your built plugin has the correct version. The version is declared as part of the plugin sources. To check your plugin version, run the plugin executable with the -v option. For example: ./my-plugin -v. The plugin version should have a v prefix. For example v1.0.0 and it should follow the semantic versioning guidelines.

  • maintainers - The GitHub usernames of the plugin maintainers.
  • relativePath - If the plugin's go.mod file is not located at the root of the GitHub repository, set the relative path to this file. This path should not include the go.mod file.

  • branch - Optionally set an existing branch in your plugin's GitHub repository.

  • tag - Optionally set an existing tag in your plugin's GitHub repository.

  • Set the ID of the configured server as the value of the JFROG_CLI_PLUGINS_SERVER environment variable.

  • If you wish the name of the plugins repository to be different from jfrog-cli-plugins, set this name as the value of the JFROG_CLI_PLUGINS_REPO environment variable.

  • The jf plugin install command will now install plugins stored in your private registry.

  • https://github.com/jfrog/jfrog-cli-plugin-template.git
    https://github.com/jfrog/jfrog-cli-core
    here
    https://github.com/jfrog/jfrog-cli-plugins-reg
    JFrog CLI's Plugins Registry
    Developer Terms
    jfrog-cli-plugin-template
    jfrog-cli-plugin-template
    external resources
    $ git clone https://github.com/jfrog/jfrog-cli-plugin-template.git
    $ cd jfrog-cli-plugin-template
    $ go build -o hello-frog
    $ ./hello-frog --help
    $ ./hello-frog hello --help
    $ ./hello-frog hello Yey!
    # Mandatory:
    pluginName: hello-frog
    version: v1.0.0
    repository: https://github.com/my-org/my-amazing-plugin
    maintainers:
        - github-username1
        - github-username2
    # Optional:
    relativePath: build-info-analyzer
    # You may set either branch or tag, but noth both
    branch: my-release-branch
    tag: my-release-tag
    plugins/my-plugin/bin/
    plugins/my-plugin/resources/
    plugins/my-plugin/resources/
    import (
    	"github.com/jfrog/jfrog-cli-core/v2/utils/coreutils"
    )
    ...
        dir, err := coreutils.GetJfrogPluginsResourcesDir("my-plugin-name")
    ...