InVisionApp / Private Action Loader
Programming Languages
Private Action Loader
This action loads and executes a private Action. This allows private actions to be reused in other private repositories. All inputs are passed down into the private action. All outputs of the private actions are passed back to the loader action.
Inputs
pal-repo-token
Required An access token with the repo scope to the repository containing the action. This should be stored as a repo secret.
pal-repo-name
Required The repository containing the action. A ref can also be appended to specify an exact commit of the action (SHA, tag, or branch). Must be in the format of {owner}/{repo}
or {owner}/{repo}@{sha}
.
pal-action-directory
Optional Directory containing the action.yml
that you would like to execute in repo. If omitted, the root directory is assumed to be the location of action.yml
.
Examples
Example usage w/ pal-action-directory
- uses: invisionapp/[email protected]
with:
pal-repo-token: ${{ secrets.REPO_TOKEN }}
pal-repo-name: some-org/super-secret-action
pal-action-directory: src/super-secret-nested-action
Example usage w/ additional parameters
- uses: invisionapp/[email protected]
with:
pal-repo-token: ${{ secrets.REPO_TOKEN }}
pal-repo-name: some-org/super-secret-action
# the following input gets passed to the private action
input-used-by-other-action: this will be passed to super-secret-action
Example usage w/o additional parameters
- uses: invisionapp/[email protected]
with:
pal-repo-token: ${{ secrets.REPO_TOKEN }}
pal-repo-name: some-org/super-secret-action
Example usage w/ SHA
- uses: invisionapp/[email protected]
with:
pal-repo-token: ${{ secrets.REPO_TOKEN }}
pal-repo-name: some-org/[email protected]
Example usage w/ Branch
- uses: invisionapp/[email protected]
with:
pal-repo-token: ${{ secrets.REPO_TOKEN }}
pal-repo-name: some-org/[email protected]
Example usage w/ Tag
- uses: invisionapp/[email protected]
with:
pal-repo-token: ${{ secrets.REPO_TOKEN }}
pal-repo-name: some-org/[email protected]
Example usage w/ Output
- uses: invisionapp/[email protected]
id: output_example
with:
pal-repo-token: ${{ secrets.REPO_TOKEN }}
pal-repo-name: some-org/[email protected]
- name: Get the previous output
run: echo "The previous output was ${{ steps.output_example.outputs.<name of output> }}"
Limitations
- Only supports javascript actions
- There is very little error handling so far