Commit Graph

227 Commits (21822b3aa31f014fcda9f461ba68cb2116fe2726)

Author SHA1 Message Date
Myk Taylor 92ac010dcd
revert the cache key name for matrix builds
we're well past the cache migration where that was necessary
2023-06-08 13:44:09 -07:00
Myk Taylor c3326d11fa
ensure the cache key is unique to the sha 2023-06-08 13:35:29 -07:00
Myk Taylor 6c9c44c71a
"develop" works as a ref; makes good default 2023-05-21 10:34:17 -07:00
Myk Taylor b2102d66fa
check out repo directly in steam dir
so we don't bork the rest of depends
2023-05-18 16:16:24 -07:00
Myk Taylor 0962180981
attempting as an ssh-key instead of a token 2023-05-18 15:10:15 -07:00
Myk Taylor b6ee0d5c02
follow advice in actions/checkout#664 2023-05-18 15:00:41 -07:00
Myk Taylor 14bbff8537
secrets can't be accessed from PRs; remove from build action 2023-05-18 14:39:49 -07:00
Myk Taylor 1212ee0ef8
retrieve steam SDK from a private repo 2023-05-18 14:35:43 -07:00
Myk Taylor ffe8de1292
clean caches in root context, not the PR 2023-05-17 11:10:20 -07:00
Myk Taylor de2e29a2e3
add github action to clean up PR caches after merge 2023-05-17 02:38:08 -07:00
Myk Taylor 7aa5692fef
reduce linux ccache size; fix msvc ccache path 2023-04-29 23:46:06 -07:00
Myk Taylor 17a423bcd2
ensure msvc builds have ccache 2023-04-29 23:31:44 -07:00
Myk Taylor b69aff4d6e
reduce cache for msvc builds too; remove ruby 2023-04-29 23:19:02 -07:00
Myk Taylor ffa9f79f94
rightsize ccache, protect steam sdk from eviction 2023-04-29 22:30:42 -07:00
Myk Taylor ba06a8f2bb
dump input vars in deploy output 2023-04-26 13:36:40 -07:00
Kelly Kinkade 17a798d5bc add missing letter 2023-04-25 16:06:36 -05:00
Kelly Kinkade 68a8c687ea steam build workflow improvements
improve cmake handling for downloading the sdk

set up GHA to cache the SDK download
2023-04-25 16:02:15 -05:00
Kelly Kinkade acc408c168 change sdk download secret 2023-04-18 22:27:49 -05:00
Kelly Kinkade 04dc3d8f31 make release channel parameter optional 2023-04-18 22:27:49 -05:00
Kelly Kinkade 337c5eea2a changes to build process for dflaunch
only build dflaunch on steam-specific builds
only download steamworks SDK when building dflaunch
get steam account from environment when downloading steamworks SDK
2023-04-18 22:27:49 -05:00
Myk Taylor 95e796abb4
update python build action to non-deprecated version 2023-04-10 00:14:30 -07:00
Myk Taylor 787844e8e6
fix ccache restore key 2023-03-07 22:27:50 -08:00
Myk Taylor 980f673454
fix depot file path 2023-03-07 17:34:44 -08:00
Myk Taylor fccd4cdec5
add steam deploy workflow 2023-03-07 17:13:41 -08:00
Myk Taylor 1bf79afd54
ditch gcc 4.8 and 7, replace with 10 2023-03-06 15:29:11 -08:00
Myk Taylor 363a3d484e
fix matrix build? 2023-03-06 15:23:45 -08:00
Myk Taylor 3569f7e687
update ruby action 2023-03-06 15:22:15 -08:00
Myk Taylor 1c36031073
update all build envs to ubuntu-22.04 2023-03-06 15:18:06 -08:00
Kelvie Wong 1e904cfc11 GHA: use declarative env
Rather than calling `env` as part of the commandline.
2023-02-03 14:09:59 -08:00
Kelvie Wong cddcf7850d cross compile: build stonesense as well 2023-02-03 09:27:18 -08:00
Kelvie Wong 5227d29f1f Use GHA caching with ccache 2023-01-24 19:55:15 -08:00
Kelvie Wong a496f88a29 Change $GITHUB_REF to HEAD
GITHUB_REF apparently doesn't work in PR builds.
2023-01-24 19:55:15 -08:00
Kelvie Wong a72b26c4f2 GHA: Add win64 cross compile build
This also removes -t from docker run, as we don't actually require a
terminal, this was just muscle memory.

This also archives the artifacts for testing.
2023-01-24 19:55:15 -08:00
Myk Taylor 0953982cfa remove DF download and tests for v50
revert when there is something to download and test
2022-12-16 03:28:42 -06:00
Myk Taylor c13b3175fc
update cache runner to v3 2022-12-11 10:39:26 -08:00
Myk Taylor f5f99f65e8
migrate usage of set-output (required by github)
as per https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
2022-12-11 10:33:47 -08:00
myk002 a22e3117d3
simplify the github action to just ninja test
since ninja all was just run
2022-11-28 17:22:17 -08:00
myk002 ae035d5836
simplify unit testing setup 2022-11-28 17:16:48 -08:00
Josh Cooper b11b1c3d5f Updates build.yml & moves TEST variable setup 2022-11-25 09:43:04 -08:00
Josh Cooper d03f93c0d7 Adds a second test stage 2022-11-25 09:43:04 -08:00
Josh Cooper a716b2796e Updates test binary name in build.yml 2022-11-25 09:43:04 -08:00
Josh Cooper 69d988332c Updates build.yml to call test-all 2022-11-25 09:43:04 -08:00
Josh Cooper 3e2d0f2ec2 Updates GithubActions yml file to use new BUILD_TESTING variable 2022-11-25 09:43:04 -08:00
myk002 df9c37a8b7
Merge branch 'develop' into docs 2022-08-15 17:09:36 -07:00
myk002 06f1f533ac build the skeleton in the "all plugins" build 2022-08-15 16:15:41 -07:00
Myk f1cb9b9a83
Build and install text help alongside html (#2236)
* build text docs alongside html

also:
- capture more doc dependencies that should cause rebuilds
- move intermediate build output (doctree data) into build dir
- allow sphinx build to multitask more for faster completion times

* install text help alongside html help

* update settings in docs build action
2022-07-10 20:14:20 -07:00
Myk 28e15162a5
reorganize init scripts into dfhack-config (#2232)
* reorganize init scripts into dfhack-config

allows player init scripts to build on defaults instead of replace them
this also moves the init scripts out of the main df directory

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* escape asterisks in docs

* remove unneeded dfhack.init file creation for test

* write the test init script to the new init dir

* create the init dir before trying to write a file

* rename default init files for clarity

* Update changelog

* Update docs/changelog.txt

Co-authored-by: Alan <lethosor@users.noreply.github.com>

* Try to get buildmaster to work with old branches

* Update changelog

* get keybindings from all init scripts

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Fix spacing in changelog

* split default loading into its own file

* update docs with new changes

* update help text wording in default init files

* Apply suggestions from code review

Co-authored-by: Alan <lethosor@users.noreply.github.com>

* Alphabetize changelog

* Update onMapLoad.default.init

* Update onMapLoad.init

* Update Core.rst

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Alan <lethosor@users.noreply.github.com>
2022-07-10 08:54:55 -07:00
Myk d12134d326
check for files, not md5 receipt in download-df.sh (#2196) 2022-06-09 11:21:14 -07:00
lethosor 078256cc2a
Remove GCC 11 from build matrix 2022-06-09 01:35:55 -04:00
lethosor fbdeba6216
Force consistent ccache cache directory
This changed to use ~/.cache/ccache instead of ~/.ccache in ccache 4.

Squashed: fixed to expand `$HOME` in a shell, because `~` in an `env:` block
does not get expanded.
2022-06-09 01:34:54 -04:00
lethosor b3618810c3
Add ccache stats to build output 2022-06-09 01:24:35 -04:00
lethosor e3f617d98e
build.yml: Force CMake to use ccache
CMake in the Ubuntu 22.04 environment doesn't seem to pick up on ccache
implicitly anymore.
2022-06-09 01:24:34 -04:00
lethosor 698dc56222
GitHub Actions: Upgrade newest matrix entry to Ubuntu 22.04, GCC 12 2022-06-08 21:41:09 -04:00
myk002 f1ebfe9441 key the DF cache on the hash of download-df.sh 2022-06-06 13:49:12 -07:00
Myk 24d2e8e115 Update build.yml 2022-06-06 11:43:41 -07:00
myk002 9c31e4b423 change the key so we no longer match our old cache 2022-06-06 11:43:41 -07:00
myk002 1f6726bb03 namespace the ccache key with the repo and branch 2022-06-06 11:43:41 -07:00
myk002 46f80bed3d
allow ccache to function again 2022-06-05 21:46:24 -07:00
lethosor a646ed7313
Split configure + build into separate steps for more granular timing 2022-05-08 13:56:09 -04:00
Josh Cooper 4439333f58
Adds ccache to build workflow (#2122)
* Adds ccache to build workflow

* Revises ccache actions cache key
2022-05-01 08:55:25 -07:00
lethosor 88f3627ef4
CI: Pass --color to sphinx 2022-05-01 01:04:59 -04:00
lethosor d1f0edd33b
Apply initial pre-commit config 2022-04-12 14:48:19 -04:00
lethosor 22ccf79df6
Fix reference to workflow input param 2022-03-31 23:39:17 -04:00
lethosor 86f2f3404e
Add workflow to re-run Buildmaster builds 2022-03-31 17:09:51 -04:00
Alan 4d5a157f4b
Bump max GCC in GitHub Actions build matrix to 11 (#2062) 2022-03-30 14:48:21 -07:00
lethosor 3a94758916
Pin sphinx to <4.4.0
Pending https://github.com/sphinx-doc/sphinx/issues/10112
2022-01-31 01:23:51 -05:00
lethosor 2471028227
test.lua: Dump some DF globals
This should help identify differences in environments, e.g. what the screen
resolution is in `PRINT_MODE:TEXT`. The `scripts/gui/blueprint:render_labels`
test currently fails in an 80x25 resolution, which implies that our CI is using
something else.
2021-09-28 21:18:50 -04:00
lethosor b7afbf788a
Install libncursesw5 instead of libncursesw6
DF is hardcoded to open libncurses.so.5 first. Both libncurses.so.5 and
libncurses.so.6 on Ubuntu 20.04 appear to have a valid waddnwstr symbol on my
end, but the GitHub Actions environment might be different.
2021-09-17 23:28:41 -04:00
lethosor b1854f251e
Install libncursesw6
In the past week, run-tests.py has started failing due to an ncurses issue on
Ubuntu 20.04, logged to stdout:

```
Didn't find any flavor of libncursesw, attempting libncurses
Symbol not found: waddnwstr
```
2021-09-17 23:28:40 -04:00
lethosor 01077fab0e
Upload test artifacts even if tests fail 2021-09-17 15:29:17 -04:00
lethosor 5dfb633db8
lint.py: add option to only check tracked files 2021-09-06 18:59:08 -04:00
lethosor 2ac3258ae8
Move travis/ scripts to ci/ 2021-09-05 23:08:01 -04:00
lethosor f876688a6a
lint.py: use argparse for argument processing 2021-09-05 23:07:58 -04:00
lethosor 9898d8c871
update-submodules: attempt to fix checkout issue, properly exit on errors
A recent run failed to update luacov, but did not fail the workflow run:

https://github.com/DFHack/dfhack/runs/3298049090?check_suite_focus=true

```
+ git checkout dfhack
error: pathspec 'dfhack' did not match any file(s) known to git
```
2021-08-11 21:36:01 -04:00
lethosor aa1c9e37fd
Revert "Force maximum of Sphinx 3 for now"
This reverts commit 82ca4c35a5.
2021-05-11 19:49:13 -04:00
lethosor 82ca4c35a5
Force maximum of Sphinx 3 for now
See #1851
2021-05-10 00:36:03 -04:00
lethosor 5e7653bbf5
Don't run update-submodules job in forks 2021-03-29 20:03:50 -04:00
Ben Lubar 1fa1501f75
use actual DFHack-Urist noreply email address in workflow 2021-02-22 23:29:28 -06:00
lethosor e2bda663d0
Use auth token to clone repo
This should fix pushing, since DFHack-Urist now has permission to push to develop.
2021-02-19 23:45:51 -05:00
lethosor 24c499c108
Add some more git flags for safety 2021-02-18 23:22:37 -05:00
lethosor 8008243c3a
Configure git name/email 2021-02-18 22:14:05 -05:00
lethosor fa475949f4
Add workflow to auto-update submodules 2021-02-18 22:08:51 -05:00
lethosor 031f2a2feb
Reduce build matrix entries 2020-10-26 01:23:24 -04:00
lethosor a0ff7c393b
Give artifacts a unique name 2020-10-21 20:14:16 -04:00
lethosor 9357c9f888
Only upload test artifacts if tests ran 2020-10-21 20:13:50 -04:00
lethosor 00f012d334
GitHub Actions: add alternative plugin builds 2020-10-21 17:58:17 -04:00
lethosor 61796a0a7b
Replace set-env with new environment file 2020-10-07 20:19:37 -04:00
lethosor c199a2349c
Install libgtk2.0-0 (for Ubuntu 20.04) 2020-10-07 12:25:26 -04:00
lethosor ea931897b9
Replace GCC 9 with GCC 10 on Ubuntu 20.04 2020-10-07 12:04:38 -04:00
lethosor c4da68b3a3
Add GCC 4.8 to build matrix 2020-10-07 11:39:45 -04:00
lethosor 673d1c623f
Give build jobs better names 2020-10-07 11:35:49 -04:00
lethosor 615bb81da6
Add two GCC versions to build matrix 2020-10-07 00:37:35 -04:00
lethosor d850389cde
Adjust sphinx flags 2020-10-07 00:31:32 -04:00
lethosor 73d2a4c9e3
Move docs build to separate job 2020-10-07 00:28:51 -04:00
lethosor 289e0df828
Roll back to actions/checkout v1
v2 uses the wrong commit sometimes: actions/checkout#299
2020-07-27 01:12:14 -04:00
lethosor 512f425c65 Move Contributing.rst to docs/, add GitHub-specific version in .github/ 2020-07-07 23:49:28 -04:00
lethosor 1df7c0be12 Upgrade Ruby 2020-06-30 00:41:02 -04:00
lethosor 504d2ec65b Stop linter steps from stopping each other 2020-06-30 00:35:04 -04:00
lethosor 324bc51540 Upgrade to checkout@v2 2020-06-30 00:34:40 -04:00
lethosor c333059316 Switch CI scripts to Python 3 2020-06-30 00:29:30 -04:00
lethosor fedf68cc7c Annotate script syntax errors 2020-06-30 00:24:03 -04:00
lethosor 6b2887d31b Upgrade to checkout@v2 2020-06-29 23:00:20 -04:00
lethosor c4aebfdf65 Use setup-python 2020-06-29 22:53:05 -04:00
lethosor e26a091b7d Clean up cached DF 2020-06-29 22:52:44 -04:00
lethosor e33a3ffff9 Fix cache key 2020-06-29 22:40:58 -04:00
lethosor 3c702ccf52 Attempt to cache DF 2020-06-29 22:35:36 -04:00
lethosor 0f58d95ea8 Use workflow commands to set up environment variables
https://help.github.com/en/actions/reference/workflow-commands-for-github-actions#setting-an-environment-variable
2020-06-29 22:02:55 -04:00
lethosor ba12e0c6d4 Remove obsolete travis scripts 2020-04-11 02:33:50 -04:00
lethosor dc598d501a Limit entire check-pr job to PRs only 2020-04-11 02:24:40 -04:00
lethosor dbdd98829f Add check for PR base branch 2020-04-11 02:22:53 -04:00
lethosor b3db62742c Rename workflow to match Travis, update badge 2020-04-11 02:15:57 -04:00
lethosor 6bbda95dd4 Add TERM=dumb back 2020-04-11 01:58:06 -04:00
lethosor cdc82bd7db Run tests within `script` 2020-04-11 01:49:53 -04:00
lethosor 8b7989e93f Try with TERM=xterm to get test output logged to console
It's currently going to stderr.log only
2020-04-11 01:17:43 -04:00
lethosor 023575071a Run tests with TERM=dumb 2020-04-11 00:49:16 -04:00
lethosor ab81b1f06d Avoid running travis commands when starting DF 2020-04-11 00:40:25 -04:00
lethosor 35dbf6cf5f Avoid changing working directory 2020-04-11 00:31:15 -04:00
lethosor 19f84603cd Fix test environment 2020-04-11 00:18:01 -04:00
lethosor d2ba91e2cd Run tests 2020-04-11 00:10:28 -04:00
lethosor 0d4572e40a Build DFHack 2020-04-10 23:56:28 -04:00
lethosor 1ebad37c2c Attempt to fix DF installation 2020-04-10 23:53:12 -04:00
lethosor 9a7c07b42b Clone the repo 2020-04-10 23:47:47 -04:00
lethosor daad14ee66 Implement linting checks 2020-04-10 23:46:30 -04:00
lethosor 385aa0877d Checkout submodules too 2020-04-10 23:38:32 -04:00
lethosor d72c395660 Merge into one job 2020-04-10 23:33:06 -04:00
lethosor 6c9e3909fd Run apt-get update first 2020-04-06 20:00:10 -04:00
lethosor f4dc5e8277 Add an initial build workflow 2020-04-06 19:57:20 -04:00