
Security News
CISA Kills Off RSS Feeds for KEVs and Cyber Alerts
CISA is discontinuing official RSS support for KEV and cybersecurity alerts, shifting updates to email and social media, disrupting automation workflows.
github.com/jfrog/jfrog-cli
Branch | Status |
---|---|
v2 | |
dev | |
v1 | |
dev-v1 |
JFrog CLI is a compact and smart client that provides a simple interface that automates access to Artifactory, Bintray and Mission Control through their respective REST APIs. By using the JFrog CLI, you can greatly simplify your automation scripts making them more readable and easier to maintain. Several features of the JFrog CLI makes your scripts more efficient and reliable:
You can either install JFrog CLI using one of the supported installers or download its executable directly. Visit the Install JFrog CLI Page for details.
JFrog CLI is written in the Go programming language, so to build the CLI yourself, you first need to have Go installed and configured on your machine.
To download and install Go
, please refer to the Go documentation.
Please download Go 1.14.x
or above.
Navigate to a directory where you want to create the jfrog-cli project, outside the $GOPATH
tree.
If the GOPATH
variable is unset, it's default value is the go folder under the user home.
Verify that the GO111MODULE
variable is either unset, or explicitly set to auto
.
Clone the jfrog-cli project by executing the following command:
git clone https://github.com/jfrog/jfrog-cli
Build the project by navigating to the jfrog folder and executing the following commands. On Unix based systems run:
cd jfrog-cli
build/build.sh
On Windows run:
cd jfrog-cli
build\build.bat
Once completed, you will find the JFrog CLI executable at your current directory.
go test -v github.com/jfrog/jfrog-cli [test-types] [flags]
The flags are:
Flag | Description |
---|---|
-rt.url | [Default: http://localhost:8081/artifactory] Artifactory URL. |
-rt.user | [Default: admin] Artifactory username. |
-rt.password | [Default: password] Artifactory password. |
-rt.apikey | Artifactory API key. |
-rt.accessToken | Artifactory access token. |
-ci.runId | [Optional] A unique identifier used as a suffix to create repositories and builds in the tests. |
The types are:
Type | Description |
---|---|
-test.artifactory | Artifactory tests |
-test.npm | Npm tests |
-test.maven | Maven tests |
-test.gradle | Gradle tests |
-test.docker | Docker tests |
-test.go | Go tests |
-test.pip | Pip tests |
-test.nuget | Nuget tests |
-test.plugins | Plugins tests |
cli-rt1-1592990748
and cli-rt2-1592990748
.| Flag | Description |
| ------------------- | ------------------------------------------------------------------------------------------------------- | --- |
| -rt.sshKeyPath
| [Optional] Ssh key file path. Should be used only if the Artifactory URL format is ssh://[domain]:port. |
| -rt.sshPassphrase
| [Optional] Ssh key passphrase. | |
To run artifactory tests execute the following command.
go test -v github.com/jfrog/jfrog-cli -test.artifactory [flags]
To run npm tests execute the following command.
go test -v github.com/jfrog/jfrog-cli -test.npm [flags]
To run maven tests execute the following command.
go test -v github.com/jfrog/jfrog-cli -test.maven [flags]
To run gradle tests execute the following command.
go test -v github.com/jfrog/jfrog-cli -test.gradle [flags]
In addition to general optional flags you must use the following docker flags.
Flag | Description |
---|---|
-rt.dockerRepoDomain | Artifactory Docker registry domain. |
-rt.dockerVirtualRepo | Artifactory Docker virtual repository name. |
-rt.dockerRemoteRepo | Artifactory Docker remote repository name. |
-rt.DockerLocalRepo | Artifactory Docker local repository name. |
To run docker tests execute the following command (fill out the missing parameters as described below).
go test -v github.com/jfrog/jfrog-cli -test.docker -rt.dockerRepoDomain=DOCKER_DOMAIN -rt.DockerLocalRepo=DOCKER_LOCAL_REPO [flags]
To run go tests run the following command.
go test -v github.com/jfrog/jfrog-cli -test.go [flags]
go test -v github.com/jfrog/jfrog-cli -test.nuget [flags]
In addition to general optional flags you can use the following optional pip flags
Flag | Description |
---|---|
-rt.pipVirtualEnv | [Optional] Path to the directory of a clean pip virtual-environment. Make sure to provide the binaries directory (in unix: /bin, in windows: \Scripts). |
go test -v github.com/jfrog/jfrog-cli -test.pip [flags]
go test -v github.com/jfrog/jfrog-cli -test.plugins
```
### Bintray tests
Bintray tests credentials are taken from the CLI configuration. If non configured or not passed as flags, the tests will fail.
To run Bintray tests execute the following command:
go test -v github.com/jfrog/jfrog-cli -test.bintray
Flags:
| Flag | Description |
| --- | --- |
| `-bt.user` | [Mandatory if not configured] Bintray username. |
| `-bt.key` | [Mandatory if not configured] Bintray API key. |
| `-bt.org` | [Optional] Bintray organization. If not configured, *-bt.user* is used as the organization name. |
* Running the tests will create a repository named `cli-tests-bintray-<timestamp>` in bintray.<br/>
Once the tests are completed, the repository will be deleted.
### Distribution tests
In addition to [general optional flags](#Usage) you can use the following flags:
| Flag | Description |
| --- | --- |
| `-rt.distUrl` | [Mandatory] JFrog Distribution URL. |
| `-rt.distAccessToken` | [Optional] Distribution access token. |
To run distribution tests run the following command:
```
go test -v github.com/jfrog/jfrog-cli -test.distribution [flags]
```
# Code Contributions
We welcome code contributions through pull requests from the community.
## Pull Requests Guidelines
* If the existing tests do not already cover your changes, please add tests..
* Pull requests should be created on the *dev* branch.
* Please use [gofmt](https://golang.org/cmd/gofmt/) for formatting the code before submitting the pull request.
# Using JFrog CLI
JFrog CLI can be used for a variety of functions with Artifactory, Bintray, Xray and Mission Control,
and has a dedicated set of commands for each product.
To learn how to use JFrog CLI, please visit the [JFrog CLI User Guide](https://www.jfrog.com/confluence/display/CLI/Welcome+to+JFrog+CLI).
# JFrog CLI Plugins
JFrog CLI plugins support 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, which is hosted in the [jfrog-cli-plugins-reg](https://github.com/jfrog/jfrog-cli-plugins-reg) GitHub repository. We encourage you, as developers, to create plugins and share them publically with the rest of the community. Read more about this in the [JFrog CLI Plugin Developer Guide](guides/jfrog-cli-plugins-developer-guide.md).
# Release Notes
The release notes are available [here](RELEASE.md#release-notes).
FAQs
Unknown package
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
CISA is discontinuing official RSS support for KEV and cybersecurity alerts, shifting updates to email and social media, disrupting automation workflows.
Security News
The MCP community is launching an official registry to standardize AI tool discovery and let agents dynamically find and install MCP servers.
Research
Security News
Socket uncovers an npm Trojan stealing crypto wallets and BullX credentials via obfuscated code and Telegram exfiltration.