Here's an example build step:
- name: Download EXD Files
uses: WorkingRobot/ffxiv-downloader@v7
with:
output-path: exd-data
regex: '^sqpack\/ffxiv\/0a0000\..+$'
output-path
specifies exactly where the downloaded files get stored, and regex
is a regex expression that matches which files must be downloaded. Here, we only want EXD/Excel related files, so we'll make sure to filter out anything that doesn't begin with sqpack/ffxiv/0a0000
.
Important
Do not use the ${{ github.workspace }}
variable in output-path
. github.workspace
maps to /github/workspace/
in Docker actions. This is intended behavior.
When running this downloaded in a CI/CD environment, it's important to be aware of the volume of data you're downloading. FFXIV does not update often, so it's best to rely on GitHub's built-in action cache whenever possible to speed up your build times. Luckily, this is extremely easy. This action already takes care of only downloading data when it's necessary by storing the currently downloaded version in a file called .cachemeta.json
inside your output-path
(unless explicitly disabled by skip-cache
.) All you need to do is cache its data. You can do so by prepending the following step before your downloader step:
- name: Retrieve cache
uses: actions/cache@v4
with:
path: exd-data
# Use the .cachemeta.json file to invalidate the cache when the data changes.
key: exd-files-data-${{hashFiles('exd-data/.cachemeta.json')}}
restore-keys: |
exd-files-data-
Slug of the repository to download from. Thaliak holds a list of all repositories and their slugs. Defaults to 4e9a232b
, which is the Win32 Global/JP base game.
Version of the game to download. If omitted, the latest version will automatically be selected.
Path to download files to. Defaults to .
or the current directory.
Important
Do not use the ${{ github.workspace }}
variable in output-path
. github.workspace
maps to /github/workspace/
in Docker actions. This is intended behavior.
Regex to match files to download. Defaults to .*
, which matches all files. Retroactively changing this does not invalidate any cached files.
Caution
If this value is changed to include new, undownloaded files, you must invalidate the cache manually.
Number of concurrent threads to use when updating. Defaults to 4
.
Best to leave default. Automatically grabs clut (index-style) files from the official repository to speed up downloads dramatically.
If true, a .cachemeta.json
file will not be created to track versioning. As such, files will be redownloaded every time this runs.
Toggles debug logging. Disabled by default.
Toggles verbose logging. Enabled by default.
Whether or not a version update occurred.
Currently installed version.