# Base64 to File [](#contributors-) Use this action if you need to get a file from a base64-encoded string that you may be storing in Secrets or elsewhere. This can be useful for certificate signing and storing the base64 cert in the Secrets. ## Usage ``` - name: Run Workflow id: write_file uses: timheuer/base64-to-file@v1.2 with: fileName: 'myTemporaryFile.txt' fileDir: './main/folder/subfolder/' encodedString: ${{ secrets.SOME_ENCODED_STRING }} ``` By default this writes the `fileName` to a temporary path defined by `env.RUNNER_TEMP`. If you want a different path that is writable, specify `fileDir` as an input argument as well and then `fileDir` and `fileName` will be combined to create the path where the output will be written. This assumes permissions in the `fileDir` are correct and does not try to set them. ## Using the file in a later step The Action has an output variable named filePath that you can use as this file is written to TEMP. Make sure you ad an `id` to your step when using this Action so that you can easily pull it out of the steps context later. ``` - name: Run Workflow id: write_file uses: timheuer/base64-to-file@v1.2 with: fileName: 'myTemporaryFile.txt' encodedString: ${{ secrets.SOME_ENCODED_STRING }} - name: Some other step uses: actions/someaction@master with: filelocation: ${{ steps.write_file.outputs.filePath }} ``` ### Using this in a reusable workflow As a special note, when using reusable workflows, repository secrets do not naturally 'flow' through to the workflow. So if your `encodedString` value is a repository secret and you expect this to work when this action is used in a reusable workflow, you need to specify the `secrets: inherit` value in that situation and put that where you are reusing this workflow. ## Building this repo After making modifications to the source index.js file, to properly package the change you need to run ``` npm run package ``` which will modify/create the /dist folder with the final index.js output ## Contributors β¨ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
MichaΕ Filipek π |
Tim Heuer π» π |
tubone(Yu Otsubo) π» |
GG π |
Daniel Zarins π |
Robbie Frodsham π |
Basti π π» |
Codemenschen Android π |
Osmund Maheswaran π |