Skip to content

JoaoMacedo03/zcli

 
 

Repository files navigation

Zendesk Logo

ZCLI

npm version Test

ZCLI is a Zendesk CLI which helps you build and manage your Zendesk apps and themes from the command line. ZCLI is currently available in beta and is built using the oclif framework.

Zendesk Logo

For more about ZCLI see the full documentation.

Getting started

This is a Node.js module available through the npm registry.

Before installing, download and install Node.js. Node.js 14.17.3 or higher is required. Installation is done using the yarn install command:

$ yarn global add @zendesk/zcli

Installation prerequisites for Linux

Currently ZCLI has a dependency on libsecret to save authentication information securely in the operating system's keychain.

Depending on your distribution, you will need to run one of the following commands prior to installing ZCLI:

  • Debian/Ubuntu: sudo apt install libsecret-1-dev
  • Red Hat-based: sudo yum install libsecret-devel
  • Arch Linux: sudo pacman -S libsecret

Note for Windows users running Linux on WSL

ZCLI's credential manager has a dependency on Linux's windowing manager (X11) which will cause some commands to fail to run on WSL, unless you run a setup of WSL with support for X11/GUI apps. These commands include: zcli login, zcli logout and zcli profiles.

Features of ZCLI not dependent on ZCLI's credential manager will work in WSL2 without X11 support.

There are a number of workarounds:

  • Manually starting a DBus session and unlocking the Gnome keyring with a password supplied via STDIN
  • Using X11 forwarding to be able to enable the Gnome keyring prompt to display

Windows 11 users

A better approach might be to await the upcoming support for GUI apps in WSL2 that Microsoft is working on and that is currently in Preview.

Commands

ZCLI supports numerous commands. Further documentation on available commands can be found here.

Local development

To run your development copy of ZCLI locally, execute yarn link:bin.

Under macOS if you are using a version manager like asdf, it can additionally set up the global /usr/local/bin/zcli. Note you need global Node.js and ts-node for this as well.

brew install --formula node yarn
yarn global add ts-node

Under Windows this can only be used in WSL2 or Cygwin.

Contributing


Note: While ZCLI is in beta, we are not routinely reviewing issues and merging community-submitted pull requests. We hope to begin reviewing these again soon, but for the moment we appreciate your patience.


Thanks for your interest in ZCLI! Community involvement helps improve the experience for all developers using the Zendesk platform.

Got issues with what you find here? You can create an issue on Github, report the issue in the Zendesk Developers Slack group, or for other problems, contact Zendesk Customer Support.

If you'd like to take a crack at making some changes, please refer to our contributing guide.

ZAF App Scaffolding

Some useful app scaffolds for build ZAF apps that incorporate the ZCLI tool are avaliable at zendesk/app_scaffolds

Releasing

Running the following command will create release tags, generate change logs docs and publish to npm.

$ ./scripts/release.sh

License

Copyright 2022 Zendesk, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

About

A command-line tool for Zendesk

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 97.7%
  • Shell 2.0%
  • Other 0.3%