Commit graph

10 commits

Author SHA1 Message Date
Ava Hahn
149555dbb6 trigger unitctl CI on version tags of existing format
Signed-off-by: Ava Hahn <a.hahn@f5.com>
2024-05-09 13:09:57 -07:00
Dylan Arbour
6d0880c995 Add unitctl build and release CI
Adds a GitHub Actions workflow that builds and releases unitctl binaries
when a tag prefixed with `unitctl/` is pushed.

Binaries are built on pull-requests that change any files within
`tools/unitctl`, on `master` branch pushes and when `unitctl/` prefixed
tags are pushed.
2024-05-09 13:09:57 -07:00
Andrew Clayton
ff2e0f4223 Add a GitHub workflow to check for whitespace issues
If it fails you can check the 'git log --check' output of the workflow
to see what the issue is. E.g

  --- 93ec0133 Oops...
  README.md:1: trailing whitespace.
  +# NGINX Unit

Signed-off-by: Andrew Clayton <a.clayton@nginx.com>
2024-05-02 14:19:32 +01:00
Dylan Arbour
2e61525093 Add dependabot.yml
We already use dependabot for security related patches, by default.

This change adds a dependabot.yml configuration file that explicitly
enables the service to manage versions of Actions in GitHub Actions.
This ensures that Actions like `setup-go` are updated timely.

This change does not affect how Dependabot manages versions for Go,
Rust, etc. The file can be used to configure that for additional
package managers and languages in the future, if desired.
2024-03-11 09:16:27 -04:00
Andrew Clayton
0cee7d1a48 Add GitHub workflow for wasm-wasi-component
This adds a GitHub CI workflow for the new wasm-wasi-component language
module.

Some things of note.

1) We need to special case 'wasm-wasi-component' in the 'Output build
   metadata' section as we are splitting the module names on '-' to
   split them into name and version.

2) Apart from needing to tell bindgen about the njs include paths, we
   also need to explicitly specify which version of clang to use to
   work around an issue with multiple versions of clang installed.

Link: <https://gitlab.freedesktop.org/mesa/mesa/-/issues/7268>
Signed-off-by: Andrew Clayton <a.clayton@nginx.com>
2024-03-07 19:47:46 +00:00
Dylan Arbour
8032ce31e3 Test with root access in GitHub workflows
To enable tests that require privileged root access, this commit tests
with `sudo`. The Java and Python jobs have additional permissions
issues, so they are also configured and made with `sudo`.

A small permissions fix is required before running tests to allow
non-root users to execute within the `/home/runner` directory.

This change also removes the custom directories that were required
without root access.

Reviewed-by: Andrew Clayton <a.clayton@nginx.com>
Signed-off-by: Dylan Arbour <d.arbour@f5.com>
2024-03-07 14:17:01 -05:00
Dylan Arbour
d5665f49a4 Update setup-go to v5
Removes deprecation notices on actions builds. v5 updates the version of
node and `cache: false` disables the errors related to not finding a
go.sum
2024-02-24 11:12:31 -05:00
Dylan Arbour
9d02b906a5 Add PHP 8.2 and 8.1 to test matrix
`setup-php` action was fixed to add embed SAPI for older versions of PHP
2024-02-23 18:06:33 -05:00
Dylan Arbour
e2cab03234 Remove debug from builds and tests
The info and above errors should be more than enough for debugging
failures in GitHuB Actions CI.
2024-02-22 15:43:46 -05:00
Dylan Arbour
56d3a1a72b Add GitHub Actions
This commit adds GitHub Actions configuration, running tests on
pull-requests and master push changes.

This change is meant to be a first-pass at our evolving CI processes.

- Tests run in parallel per language for speed and isolation
- Test matrix is composed by a string list of languages and versions
- `setup-${language}` actions are preferred over base (and changing)
  versions from `ubuntu-latest` operating system

A few caveats with the current setup:

- Only tests on Ubuntu (no FreeBSD or Alpine)
- Unpriviledged tests only
- No core dumps available on failure
2024-02-21 09:54:05 -05:00