json2file
Simplifies the process of serializing JSON data to a file.
Usage
...
- name: Set output
id: set-output
run: |
echo "color=green" >> $GITHUB_OUTPUT
- name: Generate file output from json
uses: tj-actions/json2file@v1
with:
directory: 'output'
outputs: ${{ toJSON(steps.set-output.outputs) }}
keys: 'color'
extension: 'txt'
...
The above example will create a file named color.txt in the output directory with the contents green.
Inputs
| INPUT | TYPE | REQUIRED | DEFAULT | DESCRIPTION |
|---|---|---|---|---|
| bin_path | string | false | Path to the binary | |
| directory | string | true | ".github/outputs" |
Directory to write to |
| extension | string | false | "txt" |
File extension to use, possible values: txt, json |
| keys | string | true | List of Keys to read from the outputs JSON string |
|
| outputs | string | true | JSON string | |
| skip_missing_keys | string | false | "false" |
Skip missing keys not found in the outputs JSON string |
Installation
To install json2file, open a terminal window (Command Prompt or PowerShell on Windows) and run the following command:
cargo install json2file
Building from Source
If you prefer to build from the source, follow these steps:
git clone https://github.com/tj-actions/json2file
cd json2file
cargo build --release
CLI Reference
Run json2file --help for more information.
Example
Run
This creates two files with the following contents:
foo.txt
value1
bar.txt
value2
- Free software: MIT license
If you feel generous and want to show some extra appreciation:
Credits
This package was created with Cookiecutter using cookiecutter-action
Report Bugs
Report bugs at https://github.com/tj-actions/json2file/issues.
If you are reporting a bug, please include:
- Your operating system name and VERSION.
- Any details about your workflow that might be helpful in troubleshooting.
- Detailed steps to reproduce the bug.
