Developing Zendesk apps without some local testing tools is possible but not easy. For example, each time you want to test a change, you have to package and upload the app and then install and run it remotely in Zendesk Support. To get around this problem, you can use a collection of local development tools called Zendesk Apps Tools (ZAT). Among other tasks, ZAT lets you do the following:
- Automatically create all the necessary files and folders for a new app
- Test your app locally in a browser
- Validate your app
- Package your app for upload
This article explains how to install and use the tools on the command line in macOS and Ubuntu for Windows 10. It covers the following topics:
Windows 10 users: Zendesk recommends using Ubuntu for Windows 10 as your apps development environment. Ubuntu is an open-source Linux operating system you can install in Windows 10 from the Microsoft Store. For installation instructions, see Setting up a Bash shell in Windows 10.
See the known issues if you run into any problems installing or using the tools.
If you're just starting out building apps, see Building your first Zendesk app, a five-part tutorial series that teaches you how to build an app from start to finish.
Using the command line
ZAT is a command-line application. You type commands at the command line to accomplish different tasks. Example:
$ zat new
This section describes how to open the default command line interface of each operating system.
Working in macOS
In macOS, you can run ZAT commands using Terminal, which is a Bash shell. Starting with macOS Catalina (macOS 10.15), Terminal uses the Z shell (zsh) as the default shell.
To open Terminal
- Double-click the Terminal application in your Applications/Utilities folder.
Working in Ubuntu for Windows 10
In Ubuntu for Windows 10, use the default Bash shell to run ZAT commands.
To open the Bash shell
- Open the Windows Start Menu, type cmd in the search box, press Enter to open the command prompt.
- Run the following command at the command prompt :
c:\> bash
The bash shell opens after a moment.
Example:
Installing Ruby
ZAT is a Ruby gem -- a self-contained package of Ruby code that extends Ruby. You don't need to know Ruby to use the tools but you do need to install Ruby to install the gem.
ZAT supports Ruby 2.1 or later on macOS and Ubuntu, and Ruby 2.3 only on Windows.
Ruby may already be installed on your system. Open your command-line interface and run the following command:
$ ruby -v
You should see something like the following response:
If you get an error, Ruby is not installed. If the result is a Ruby version earlier than 2.1, you'll need to update it. If the result is Ruby 2.1 or better, you don't need to do anything. Skip to Installing the ZAT gem.
Installing Ruby in macOS
Ruby is included with all modern versions of macOS (10.9 and later). If you have Ruby 2.1 or later, you can skip this section and go to Installing ZAT.
If you need to update Ruby, see Managing Ruby versions.
Installing Ruby in Ubuntu for Windows 10
Ruby is included with Ubuntu for Windows 10. If you have Ruby 2.1 or later, you can skip this section and go to Installing ZAT.
If you need to update Ruby, see Managing Ruby versions.
Installing Ruby in Windows
ZAT only supports Ruby 2.3 for Windows because Ruby 2.4 and later has a dependency issue that prevents ZAT from working. Earlier versions of Ruby are not supported. As a result, consider using Ubuntu for Windows 10 as your development environment. For installation instructions, see Setting up a Bash shell in Windows 10.
If you decide to use Ruby 2.3 for Windows, make sure to install the Ruby Development Kit (DevKit) after installing Ruby. See the downloads page on the RubyInstaller site.
Installing ZAT
sudo
to request admin privileges, then enter the password for your system when prompted. Example: $ sudo gem install rake
.First, install rake, a build automation tool, with the following command in your command-line interface:
$ gem install rake
Next, install ZAT with the following command:
$ gem install zendesk_apps_tools
The ZAT gem and a number of supporting gems are installed, along with related documentation.
Updating ZAT
Zendesk updates ZAT from time to time. To get the latest version, run the following command:
$ gem update zendesk_apps_tools
Using ZAT
The ZAT tools let you do the following:
Creating starter files for a new app
You can automatically create basic starter files and folders for a new app.
To create the files
- In the command-line interface, navigate to the folder where you want the app files to be saved in a subfolder.
Use the cd command (for change directory) to navigate to a child folder. Example:
$ cd zendesk_app_projects
To back up one directory, use cd followed by a space and two periods. Example:
cd ..
- Run the following command:
$ zat new
The command creates a set of starter files to use with the Zendesk Apps framework v2 (ZAF v2). To learn more, see the ZAF v2 documentation.
Alternatively, you can start an app with the Zendesk app scaffold with the
--scaffold
option:$ zat new --scaffold
See the app scaffold readme on Github.
Note: The app scaffold is for advanced web developers. Zendesk can't provide support for third-party technologies used in the scaffold, nor can Zendesk debug custom scaffold configurations or code.
- At the prompts, enter your name and email, the app's name, the URL of the file to be iframed (if any), and a folder name for the app.
ZAF v2 apps are iframe apps. If you don't specify the URL to an iframe file, ZAT will create a basic HTML file that you can use in an iframe.
The tool creates and lists the files. The window should look as follows in macOS:
Testing your app locally in a browser
You can start a local HTTP server and run your app locally. This ability is essential for testing and debugging your app. You don't have to package and upload the app to Zendesk Support first.
This feature is supported in Chrome and Firefox, but not Safari 9 or later. To test your app locally, ZAT runs a local http server and loads the app in the Zendesk Support https page. This results in mixed content. Chrome and Firefox block mixed content but provide a way to turn off the blocking. Starting with version 9, Safari also blocks mixed content but doesn't provide a way to turn off blocking.
Some features may not work locally. See ZAT server limitations.
To test your app locally
- In the command-line interface, navigate to the folder containing the app files.
- Start the local HTTP server with the following command:
$ zat server
If you get an error, make sure you navigate to your app's folder using the command line. You can start the server from a different folder by specifying the relative path to the files:
After a moment, a status message appears informing you that the server has started. Example:$ zat server --path /tmp/test-app
Note: The command prompt is unavailable until you shut down the server later. - In your favorite browser, navigate to any ticket in Zendesk Support. The URL should look something like this:
https://subdomain.zendesk.com/agent/tickets/321
- Append ?zat=true to the ticket URL, and reload the page.
The URL should look like this:
https://subdomain.zendesk.com/agent/tickets/321?zat=true
Tip: Bookmark the modified URL for easy access in the future. You might also want to create a dummy ticket for app testing.
- If you're using the Chrome browser, the content of your app may be blocked. Click the lock icon on the left side of the address bar and select Site settings. On the Settings page, scroll to the Insecure Content section and select Allow.
Click the lock icon in the address bar:
Select Site Settings > Privacy and Security, then select Allow from the Insecure content menu:Note: Firefox doesn't block app content but Safari does and has no option to disable blocking. You must use Chrome or Firefox to work with the local zat server..
- Click the Reload Apps icon in the upper-right side of the Apps panel to load your local app into the panel.
Even if the app appears in a Zendesk Support page, it's actually running locally on your machine.
Note: If nothing happens, check for a shield icon in the Address bar. See step 5. - Work iteratively to develop and test features in your app. For example, make some changes to your app's source code, save the changes, then click Reload Apps on the ticket page to test the changes.
- When you're done for the day, press Control+C to shut down the local server.
Validating your app
When you're finished developing your app, you should run validation tests to catch any problems before uploading it to Zendesk Support. The ZAT validation tool runs the same tests that are run when an app is uploaded to the Zendesk App Market.
To validate your app
- Run the following command in the folder containing the app files:
$ zat validate
If using the App scaffold, run the command in the final build folder, which may be dist/ or the root folder depending on the folder structure. You can also specify the path to the final build folder with the
-p
option. Example:$ zat validate -p ./dist
- When prompted, enter the URL of the Zendesk Support instance where you plan to install the app. The command doesn't actually install the app. Specify http instead of https in the URL. Example: http://yoursubdomain.zendesk.com.
- Fix any problems reported by the tool.
Packaging your app for upload to Zendesk Support
When you're ready to upload your app to your instance of Zendesk Support, use the ZAT tool to package the app for uploading.
- Run the following command in the folder containing the app files:
$ zat package
- When prompted, enter the URL of the Zendesk Support instance where you plan to install the app. The command doesn't actually upload and install the app. Also, specify http instead of https in the URL.
Example: http://yoursubdomain.zendesk.com.
The ZAT tool packages the app and saves it in a tmp folder. Example:
- Grab the zip file (app-20130110164906.zip in the example) and upload it to Zendesk Support. For instructions, see Uploading.
- To clean up the tmp folder, run the following command:
$ zat clean
ZAT server limitations
A few things don't work when running an app locally on the ZAT server:
- secure settings - the ZAT server won't render the settings
-
requirements - the requirements aren't installed, so the framework's
requirement()
method won't work either
To get around these limitations, you can install the app as a private app and then use the zat update
command to make updates to the installed app. See Updating an installed app.
For other limitations, see also Zendesk app tools - Known issues.
96 Comments
awesome
nice!
Indeed, this helps a LOT!
Is it possible to pass the parameters in the "zat server" command, or even better, could the server be configured to read from an config file?
Yes. From version 1.20.0 it will automatically read from a settings.yml file in your current working directory. Or you pass it a file with the -c option.
Looks like the latest version of Ruby is 2.1.3. Will that work, or should we use 1.9.3 explicitly?
I'm using the latest Windows install, which is 2.0.0p481, and it seems to work just like it should.
I'm getting an error when I try to run "zat validate" or "zat package" ("zat new" and "zat server" work fine); I've tried it with Ruby 1.9.3 and Ruby 2.0.0. This is on Windows 8.
C:/Ruby200/lib/ruby/gems/2.0.0/gems/execjs-2.2.2/lib/execjs/external_runtime.rb:
62:in `extract_result': SyntaxError: Expected identifier, string or number (Exec
JS::RuntimeError)
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/execjs-2.2.2/lib/execjs/externa
l_runtime.rb:29:in `exec'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/jshintrb-0.2.4/lib/jshintrb/lin
t.rb:65:in `lint'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.16.1/lib
/zendesk_apps_support/validations/source.rb:40:in `jshint_error'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.16.1/lib
/zendesk_apps_support/validations/source.rb:46:in `block in jshint_errors'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.16.1/lib
/zendesk_apps_support/validations/source.rb:45:in `each'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.16.1/lib
/zendesk_apps_support/validations/source.rb:45:in `each_with_object'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.16.1/lib
/zendesk_apps_support/validations/source.rb:45:in `jshint_errors'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.16.1/lib
/zendesk_apps_support/validations/source.rb:34:in `call'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.16.1/lib
/zendesk_apps_support/package.rb:29:in `block in validate'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.16.1/lib
/zendesk_apps_support/package.rb:24:in `tap'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.16.1/lib
/zendesk_apps_support/package.rb:24:in `validate'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/zendesk_apps_tools-1.21.0/lib/z
endesk_apps_tools/command.rb:47:in `validate'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/thor-0.18.1/lib/thor/command.rb
:27:in `run'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/thor-0.18.1/lib/thor/invocation
.rb:120:in `invoke_command'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/thor-0.18.1/lib/thor.rb:363:in
`dispatch'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/thor-0.18.1/lib/thor/base.rb:43
9:in `start'
from C:/Ruby200/lib/ruby/gems/2.0.0/gems/zendesk_apps_tools-1.21.0/bin/z
at:5:in `'
from C:/Ruby200/bin/zat:23:in `load'
from C:/Ruby200/bin/zat:23:in `'
Hi, I'm having the same issue as Jacob. Were you able to resolve it in the end Jacob?
@Jacob Mattison - have you tried updating your ZAT to the latest version?
See here: https://github.com/zendesk/zendesk_apps_tools
or
Type: "sudo gem update zendesk_apps_tools" on your console.
I have the latest version of ZAT -- I got the error within an hour of installing it, and just now tried to do the gem update and got "nothing to update".
@Christopher Stock -- the error has not resolved. I was able to deploy my app by simply zipping up the directory and uploading it, but couldn't use ZAT for the validate or package steps.
@Jacob Mattison - i think i may need to communicate directly to investigate further on your issue. Expect an email from me as i will be creating a Support ticket for you to have this issue resolved.
Arthur, any updates on this?
My gem is update-to-date as well.
Running Ruby 2.0 on my Win8 box.
I'm experiencing the same issues as Jacob (Validate and the Package commands throws and error).
Thanks!
Hi again, after skimming through these topics, I found this, which helped tremendously!
https://support.zendesk.com/hc/en-us/articles/203691376-Zendesk-app-tools-Known-issues-#topic_aln_yrh_3n
Hi Robert!
I'm so glad you found what you needed! Please give a shout if you need anything else. :)
For all Docker users: I prepared a docker image for ZAT and it's available on dockerhub: https://registry.hub.docker.com/u/pindar/zat/
Same problem as Jacob has, I am getting this error on zat validate and zat package only:
PS C:\ms_app> zat validate
C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/execjs-2.3.0/lib/execjs/external_runtime.rb:65:in `extract_result': SyntaxError:
Expected identifier, string or number (ExecJS::RuntimeError)
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/execjs-2.3.0/lib/execjs/external_runtime.rb:32:in `exec'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/execjs-2.3.0/lib/execjs/external_runtime.rb:14:in `initialize'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/execjs-2.3.0/lib/execjs/runtime.rb:44:in `new'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/execjs-2.3.0/lib/execjs/runtime.rb:44:in `compile'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/execjs-2.3.0/lib/execjs/module.rb:27:in `compile'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/jshintrb-0.2.4/lib/jshintrb/lint.rb:48:in `initialize'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.17.1/lib/zendesk_apps_support/validations/so
urce.rb:51:in `new'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.17.1/lib/zendesk_apps_support/validations/so
urce.rb:51:in `linter'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.17.1/lib/zendesk_apps_support/validations/so
urce.rb:39:in `jshint_error'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.17.1/lib/zendesk_apps_support/validations/so
urce.rb:45:in `block in jshint_errors'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.17.1/lib/zendesk_apps_support/validations/so
urce.rb:44:in `each'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.17.1/lib/zendesk_apps_support/validations/so
urce.rb:44:in `each_with_object'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.17.1/lib/zendesk_apps_support/validations/so
urce.rb:44:in `jshint_errors'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.17.1/lib/zendesk_apps_support/validations/so
urce.rb:33:in `call'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.17.1/lib/zendesk_apps_support/package.rb:28:
in `block in validate'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.17.1/lib/zendesk_apps_support/package.rb:24:
in `tap'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/zendesk_apps_support-1.17.1/lib/zendesk_apps_support/package.rb:24:
in `validate'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/zendesk_apps_tools-1.22.2/lib/zendesk_apps_tools/command.rb:47:in `
validate'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/thor-0.18.1/lib/thor/command.rb:27:in `run'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/thor-0.18.1/lib/thor/invocation.rb:120:in `invoke_command'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/thor-0.18.1/lib/thor.rb:363:in `dispatch'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/thor-0.18.1/lib/thor/base.rb:439:in `start'
from C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/zendesk_apps_tools-1.22.2/bin/zat:5:in `'
from C:/Ruby200-x64/bin/zat:23:in `load'
from C:/Ruby200-x64/bin/zat:23:in `'
Hi Kousha,
Check out this doc and let me know if you're still getting an error: https://support.zendesk.com/hc/en-us/articles/203691376-Zendesk-app-tools-Known-issues-#topic_aln_yrh_3n
Angie
When I'm running zat server, is it also supposed to stop me from affecting the zendesk tickets themselves? For example, say my app has a button that changes the ticket status to "pending" and add a "we'll get back to you" canned comment. If I click that button while ?zat=true, then will it change that ticket in real life?
Hi Mzhu,
Any changes made while '?zat=true' runs will be changed just like in real life. We recommend making a test account, populating it with test data, and experimenting on that. If you have any questions about how to set up a testing account, just let me know. Also, what are you making?
Angie
I'm also not getting the Apps button in the upper right that is usually there, so I can't load the app.
I'm running Mac OS X 10.10.5 and the latest version of zendesk_apps_tools.
The Zat server is running from the app folder.
I followed the steps in here too:
https://support.zendesk.com/hc/en-us/articles/203691376-Zendesk-app-tools-Known-issues-#topic_aln_yrh_3n
No luck.
What did I do wrong?
I got it to work when creating a test app through: zat new
But couldn't get my existing app to run through there. I guess I'll just try to start fresh and port stuff over until I can figure out what the issue is.
Awesome article, Charles. Exceedingly clear and helpful. Thank you!!
@Jacob and @Kousha
I know it's a bit late in the day, but here's the issue.
The zat system needs a Javascript runtime to do the validate and package commands - because he's actually running your app through Javascript to detect errors or issues befor zipping it up. Unfortunately the installation documentation above doesn't mention this.
I use Node.js, which can be found here ... https://nodejs.org/en/
Install that, and then try again, If it still fails, you may also need to manually update ExecJS through ruby,so it will get the latest version that detects your Javascript runtime.
gem install execjs
Oh, and sometimes, he's a bit fussy with paths ... enter this on your command line
PATH=C:\Ruby200-x64\bin;C:\Program Files\nodejs
Using the appropriate paths to your Ruby exe and Node JS exe files respectively.
Hope this helps.
Help! I just updated my Ruby and gem packages.
c:\Projects\Zendesk\pi_integration>zat validate RUBYOPT -E utf-8
Warning: unexpected string encoding: IBM437, zat runs best in UTF-8.
Please set the RUBYOPT environment variable to "-E utf-8".
C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rbreadline.rb:1097:in `<module:RbReadline>': HOME environment variable (or HOMEDRIVE and HOMEPATH) must be set and point to a directory (RuntimeError)
from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rbreadline.rb:17:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/readline.rb:10:in `<module:Readline>'
from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/readline.rb:8:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/thor-0.19.4/lib/thor/line_editor/readline.rb:2:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/thor-0.19.4/lib/thor/line_editor.rb:2:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/thor-0.19.4/lib/thor/base.rb:8:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/thor-0.19.4/lib/thor.rb:2:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/zendesk_apps_tools-1.37.4/lib/zendesk_apps_tools/command.rb:1:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/zendesk_apps_tools-1.37.4/bin/zat:13:in `<top (required)>'
from C:/Ruby22-x64/bin/zat:22:in `load'
from C:/Ruby22-x64/bin/zat:22:in `<main>'
c:\Projects\Zendesk\pi_integration>ruby -v
ruby 2.2.6p396 (2016-11-15 revision 56800) [x64-mingw32]
Has anyone run into this issue?
Hi, I've Installed Ruby version "ruby 2.2.6p396 (2016-11-15 revision 56800) [i386-mingw32]" (also tried latest version and 64-bits, but I see this one was recommended).
The rake installation went well, but the zendesk_apps_tools won't install. After downloading and installing a few packages, it fails with this message:
ERROR: Error installing zendesk_apps_tools:
The 'sassc' native gem requires installed build tools.
Please update your PATH to include build tools or download the DevKit
from 'http://rubyinstaller.org/downloads' and follow the instructions
at 'http://github.com/oneclick/rubyinstaller/wiki/Development-Kit'
EDIT: Found a solution: You have to download the devkit AND run the 2 commands listed here:
https://github.com/oneclick/rubyinstaller/wiki/Development-Kit under "quick start" .
Would probably be a good idea to update the docs here with that info.
Kjetil,
I found this article to fix part of the problem. http://stackoverflow.com/questions/39179377/windows-bundle-install-home-environment-variable-or-homedrive-and-homepath-mu
I'm now only receiving the annoying encoding warning, but I am able to validate, start the server and package the apps for Zendesk with some researching and tweaking...
@CharlesNadeau,
Please fix a tutorial add list:
To install Ruby
5. Necessary add path a system:
Work a fine.
hi there,
I've install ZAF v2 on windows 10, its installed successfully, but when I run
zat validate command it is showing below error.
please suggest .
info Checking for new version of zendesk_apps_tools
C:/Ruby22/lib/ruby/2.2.0/net/http.rb:923:in `connect': SSL_connect returned=1 errno=0 state=error: certificate verify failed (OpenSSL::SSL::SSLError)
from C:/Ruby22/lib/ruby/2.2.0/net/http.rb:923:in `block in connect'
from C:/Ruby22/lib/ruby/2.2.0/timeout.rb:73:in `timeout'
from C:/Ruby22/lib/ruby/2.2.0/net/http.rb:923:in `connect'
from C:/Ruby22/lib/ruby/2.2.0/net/http.rb:863:in `do_start'
from C:/Ruby22/lib/ruby/2.2.0/net/http.rb:852:in `start'
from C:/Ruby22/lib/ruby/2.2.0/net/http.rb:583:in `start'
from C:/Ruby22/lib/ruby/2.2.0/net/http.rb:478:in `get_response'
from C:/Ruby22/lib/ruby/gems/2.2.0/gems/zendesk_apps_tools-2.3.0/lib/zendesk_apps_tools/command.rb:247:in `check_for_update'
from C:/Ruby22/lib/ruby/gems/2.2.0/gems/zendesk_apps_tools-2.3.0/lib/zendesk_apps_tools/command.rb:67:in `validate'
from C:/Ruby22/lib/ruby/gems/2.2.0/gems/thor-0.19.4/lib/thor/command.rb:27:in `run'
from C:/Ruby22/lib/ruby/gems/2.2.0/gems/thor-0.19.4/lib/thor/invocation.rb:126:in `invoke_command'
from C:/Ruby22/lib/ruby/gems/2.2.0/gems/thor-0.19.4/lib/thor.rb:369:in `dispatch'
from C:/Ruby22/lib/ruby/gems/2.2.0/gems/thor-0.19.4/lib/thor/base.rb:444:in `start'
from C:/Ruby22/lib/ruby/gems/2.2.0/gems/zendesk_apps_tools-2.3.0/bin/zat:13:in `<top (required)>'
from C:/Ruby22/bin/zat:23:in `load'
from C:/Ruby22/bin/zat:23:in `<main>'
Hi Kiran,
Same problem here. I can't get past this SSL error for update/validate/package. Did you manage to find a solution?
Please sign in to leave a comment.