Skip to main content

Taqueria GitHub Action

Taqueria has a GitHub action that helps simplify and standardize the use of GitHub actions. The action provides a Taqueria environment in a Docker container that can be used to run Taqueria commands for automated tests and in CI/CD pipelines

You can find the action on the GitHub Marketplace here

The action GitHub repo for the project is located here

You can see the action being used on the Taco Shop Scaffold

Inputs

project_directory

The name of the project directory. If nothing is specified the repository root directory is used

task

The name of a specific task to run. This input is mainly used for testing purposes

plugins

A comma separated list of plugins to install

sandbox_name

The name of the Flextesa sandbox to use. A sandbox will only be created if this input is specified. When running the sandbox, the action will automatically change the value of rpcUrl for the sandbox in .taq/config.json. This is to enable origination to the local sandbox in CI

compile_command

The compile command used to compile the contracts

contracts

A comma separated list of contracts to be added to the Taqueria project.

originate

When set to true, contracts will be originated to the environment defined with the environment variable (leave empty for default). This option makes use of the taquito plugin so please make sure to install it

tests

When set to true, all tests in the tests directory will be run using the Jest plugin. This option makes use of the jest plugin so please make sure to install it

environment

This input is used to select the configured environment for taqueria to originate to. The default is set to development

Adding The Action to Your Project

Adding a GitHub action to your project requires adding a workflow YML file (the default is main.yml) to your GitHub repository in the .github/workflows directory. After that you can add what you need in the file to make taqueria run as part of your project workflow. There are some examples of adding the action to your workflow below

You can also check out the quickstart guide for GitHub actions in the GitHub docs located here

Example Usage

Single step action

- name: taqueria tasks
uses: ecadlabs/taqueria-github-[email protected]
with:
plugins: '@taqueria/plugin-ligo, @taqueria/plugin-flextesa, @taqueria/plugin-taquito'
contracts: 'counter.jsligo'
compile_command: compile
sandbox_name: local
originate: 'true'
tests: 'true'

Multiple step action

- name: compile contracts
uses: ecadlabs/taqueria-github-[email protected]
with:
project_directory: 'example-projects/hello-tacos'
contracts: 'hello-tacos.mligo'
compile_command: 'compile'

- name: start local sandbox
uses: ecadlabs/taqueria-github-[email protected]
with:
project_directory: 'example-projects/hello-tacos'
sandbox_name: 'local'

- name: originate contracts
uses: ecadlabs/taqueria-github-[email protected]
with:
project_directory: 'example-projects/hello-tacos'
originate: 'true'

- name: originate contracts
uses: ecadlabs/taqueria-github-[email protected]
with:
project_directory: 'example-projects/hello-tacos'
tests: 'true'