196 Commits

Author SHA1 Message Date
Chris Roberts
10be73c081 ci: fix github to jira issue sync (#26747)
Add local actions for JIRA interactions to replace github actions
that have been archived.
2025-09-12 13:40:11 -07:00
tehut
bfd64b5f98 build:replicate nomad-enterprise 557e533 (#26741) 2025-09-09 17:02:08 -07:00
James Rasell
9e893ef2ad e2e: Add Client Intro test framework and initial test. (#26639)
The new client intro test mimics the Consul and Vault compat tests
and uses local agents to perform the required setup. This method
allows us the flexibility moving forward to test when enforcement
mode is in strict.

The test suite will now be triggered from the test-e2e CI run
and can also be called by a make target.
2025-08-28 09:53:07 +01:00
Alexey Kulakov
919e5c2aa4 feat(ui): yarn -> pnpm (#26309) 2025-08-20 13:01:22 -07:00
Tim Gross
ec8250ed30 property test generation for reconciler (#26142)
As part of ongoing work to make the scheduler more legible and more robustly
tested, we're implementing property testing of at least the reconciler. This
changeset provides some infrastructure we'll need for generating the test cases
using `pgregory.net/rapid`, without building out any of the property assertions
yet (that'll be in upcoming PRs over the next couple weeks).

The alloc reconciler generator produces a job, a previous version of the job, a
set of tainted nodes, and a set of existing allocations. The node reconciler
generator produces a job, a set of nodes, and allocations on those
nodes. Reconnecting allocs are not yet well-covered by these generators, and
with ~40 dimensions covered so far we may need to pull those out to their own
tests in order to get good coverage.

Note the scenarios only randomize fields of interest; fields like the job name
that don't impact the reconciler would use up available shrink cycles on failed
tests without actually reducing the scope of the scenario.

Ref: https://hashicorp.atlassian.net/browse/NMD-814
Ref: https://github.com/flyingmutant/rapid
2025-06-26 11:09:53 -04:00
Piotr Kazmierczak
05c3b5050c ci: align CE build command with ENT (#26108)
In hashicorp/nomad-enterprise#2592 we introduced a
divergence in how Nomad CE and ENT build their binaries. Nomad CE used a more
sophisticated approach, setting uid, gid and home environment variables in the
docker run command. Despite mine (and others) best efforts, we were not able
to do the same in the ENT repo, which relies on special git settings that allow
it to pull dependencies from private repositories, and left a different docker
run command there, that just inherited GHA runner user and copied the resulting
tarball instead of moving it. #26090 then attempted to remedy #25910 resulting
from docker run command ignoring ${{ env.GO_TAGS }} if run with custom
--env, but the resulting backport broke ent builds.

This PR restores ENT behavior of building Nomad builds with GHA runner user,
thus inheriting runner's environment on ent.
2025-06-23 17:13:22 +02:00
Piotr Kazmierczak
8f98dca8f8 ci: docker GO_TAGS must be quoted (#26105)
ent builds use multiple tags
2025-06-23 10:14:47 +02:00
Allison Larson
732a671da6 ci: pass go_tags to linux docker builder (#26090) 2025-06-20 11:54:50 -07:00
Daniel Bennett
3ed91193ec ci: windows 2022 runners (upcoming 2019 eol) (#25984)
fix for:
> This is a scheduled Windows Server 2019 brownout.
> The Windows Server 2019 image will be removed on 2025-06-30.
> For more details, see actions/runner-images#12045
2025-06-04 16:55:41 -04:00
Tim Gross
8a87c33594 build: pin actionlint workflow (#25855)
We're required to pin Docker images for Actions to a specific SHA now and this
is tripping scans in the Enterprise repo. Update the actionlint image.

Ref: https://go.hashi.co/memo/sec-032
2025-05-14 14:25:37 -04:00
Matt McQuillan
74b98a6e9b updating fields for jira move/sync 2025-04-24 11:27:42 -04:00
Matt McQuillan
2b437fd733 Fixing ordering and ending bracket of extraFields 2025-04-23 15:59:27 -04:00
Matt McQuillan
1754fb1ed8 Update .github/workflows/jira-sync.yml
Co-authored-by: Tim Gross <tgross@hashicorp.com>
2025-04-23 15:53:35 -04:00
Matt McQuillan
d9b0fdcb8e Testing Revised Jira Fields 2025-04-23 15:39:58 -04:00
Matt McQuillan
0fc8e68460 Updating Jira Project
Switching from NET to NMD
2025-04-23 09:36:59 -04:00
James Rasell
c85c723336 ci: Run core tests groups workflow on amd64 and arm64 runners. (#25695) 2025-04-17 15:16:29 +01:00
James Rasell
c44f847cbb ci: Compile on Ubuntu arm64 within core test workflow. (#25692)
Nomad is released as a Linux arm64 binary, so having a compilation
step on this OS/ARCH within our core test workflow will help
ensure basic arm64 problems do not get into our release branches.
2025-04-17 07:46:49 +01:00
Tim Gross
e3845207e0 update backport assistant to 0.5.7 (#25697)
Update BPA to avoid problems when requerying for reviewers.

Ref: https://github.com/hashicorp/backport-assistant/pull/152
Ref: https://hashicorp.atlassian.net/browse/NET-11804
2025-04-16 11:39:37 -04:00
Piotr Kazmierczak
1d3f08b63d ci: correct BPA image version (#25693) 2025-04-16 11:02:30 +02:00
Tim Gross
de8bc4fead update BPA to 0.5.6 (#25691)
Fixes logging issues with the errors we've been getting for backport failures,
which will help us further diagnose the problem.

Ref: https://hashicorp.atlassian.net/browse/NET-11804
2025-04-15 16:56:15 -04:00
Piotr Kazmierczak
6f7d789b1d ci: disable docker build summary (#25685) 2025-04-15 17:02:46 +02:00
Piotr Kazmierczak
b26995c3d5 ci: migrate runners to ubuntu-22.04 (#25651)
* ci: migrate runners to ubuntu-22.04
* find a supported build for custom-linux-xl
2025-04-14 16:12:10 -04:00
Piotr Kazmierczak
54414e6a7c ci: pin docker/build-push-action to a TSCCR approved version (#25678) 2025-04-14 17:50:43 +02:00
Piotr Kazmierczak
36e91be7ee build: use nomad-builder docker image to build Nomad (#25626)
This introduces a docker image based off of ubuntu:bionic that can be used to
compile Nomad binary against glibc 2.27.

The image cannot build JS assets, which must be created before we compile the
Go binary.
2025-04-14 09:27:17 +02:00
Tim Gross
5c89b07f11 CI: run copywrite on PRs, not just after merges (#25658)
* CI: run copywrite on PRs, not just after merges
* fix a missing copyright header
2025-04-10 17:01:34 -04:00
James Rasell
0316309276 ci: Run the build workflow on pushes to long-lived branches only. (#25597) 2025-04-07 07:16:24 +01:00
James Rasell
0a29c2f017 ci: Use custom runner for core tests with more CPU and memory. (#25475) 2025-03-21 13:52:36 +00:00
Piotr Kazmierczak
084497c46c build: split minimum-os job into 2 and only run arm checks on CE (#25467)
arm GHA runners currently do not support private repositories.
2025-03-20 16:35:42 +01:00
Phil Renaud
ce83993667 [ci/cd] Moves our default github action flows to use Node v20 (#25425)
* Moves our default github action flows to use Node v20

* noop to trigger ui-build pipeline
2025-03-19 11:38:20 -04:00
Piotr Kazmierczak
94fbe30b47 build: smoke test on RHEL8 instead of RHEL7 (#25421) 2025-03-18 15:41:23 +01:00
James Rasell
7b156e928a github: Update Vault and Consul versions used in core workflow. (#25287) 2025-03-07 07:20:24 +00:00
dependabot[bot]
62e02be050 chore(deps): bump actions/upload-artifact from 4.6.0 to 4.6.1 (#25191)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.6.0 to 4.6.1.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](65c4c4a1dd...4cec3d8aa0)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-24 13:40:03 -05:00
Phil Renaud
3f764a21bc [ui, tests] Various acceptance test fixups (v main) (#25031)
* Add factory hooks for jobs to have previously stable versions and stopped status

* Since #24973 node-read isn't presupposed and so should regex match only on the common url parts

* Job detail tests for title buttons are now bimodal and default to having previously-stable version in history

* prettier plz

* Breaking a thing on purpose to see if my other broken thing is broken

* continue-on-error set to false to get things red when appropriate

* OK what if continue-on-error=true but we do a separate failure reporting after the fact

* fail-fast are you the magic incantation that I need?

* Re-fix my test now that fast-fail is off

* Fix to server-leader by adding a region first, and always()-append to uploading partition results

* Express failure step lists failing tests so you don't have to click back into ember-exam step

* temporary snapshot and logging for flakey test in service job detail

* Bunch of region and tasklogs test fixups

* using allocStatusDistribution to ensure service job always has a non-queued alloc
2025-02-20 16:56:14 -05:00
James Rasell
ec0cf86a37 github: update numerous workflow dependencies (#25160) 2025-02-20 08:32:29 +00:00
James Rasell
268e90dedf ci: Update semgrep container version to 1.107.0 (#25078) 2025-02-12 09:48:26 +00:00
James Rasell
d8841e011f semgrep: Fix invalid RPC rule and add validation GHA workflow. (#25088) 2025-02-12 09:44:27 +00:00
dependabot[bot]
08c72b0e07 chore(deps): bump actions/setup-go from 5.1.0 to 5.2.0 (#24670)
Bumps [actions/setup-go](https://github.com/actions/setup-go) from 5.1.0 to 5.2.0.
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](41dfa10bad...3041bf56c9)

---
updated-dependencies:
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-08 12:26:32 +01:00
Piotr Kazmierczak
f01c8aa66c build: recommend dmidecode for rpm and deb packages (#24765) 2025-01-03 08:35:41 +01:00
James Rasell
fe821b4c1c github: Fix lock threads syntax and permissions (#24708)
The parameters used for the reusable action were incorrect since
the 5.0.1 update. The permissions were also incorrect as the
workflow needs to write to issues and PRs.
2024-12-18 15:29:58 +00:00
James Rasell
e3ac00f30e github: notify Slack when CI fails on merge to main/release (#24690)
This change creates a reusable workflow for notifying Slack on CI
failures. The message will include useful links and information
about the failure, so product engineers can investigate and fix
any problems.

The new workflow is used by selected workflows which trigger on
merges to main or release/* branches. The notification is only
sent on failure and when the event was a push (PR merge) meaning
the number of notifications should be minimal.

The aim is to help identify and draw attention to failure across
our release branches, in particular when automated processes
happen.
2024-12-18 08:07:44 +00:00
dependabot[bot]
614cb5c17f chore(deps): bump slackapi/slack-github-action from 1.27.0 to 2.0.0 (#24472) 2024-12-13 14:00:37 +00:00
Phil Renaud
3bc2c07821 Remove the Ember Test Audit workflow (#24637) 2024-12-10 11:25:53 -06:00
dependabot[bot]
6a41dc7b2f chore(deps): bump nanasess/setup-chromedriver from 2.2.2 to 2.3.0 (#24623)
Bumps [nanasess/setup-chromedriver](https://github.com/nanasess/setup-chromedriver) from 2.2.2 to 2.3.0.
- [Release notes](https://github.com/nanasess/setup-chromedriver/releases)
- [Commits](42cc299832...e93e57b843)

---
updated-dependencies:
- dependency-name: nanasess/setup-chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-09 14:26:24 -06:00
Michael Smithhisler
a43f46e247 ci: only cache from github hosted runners to avoid file perm issues (#24607) 2024-12-04 12:27:26 -05:00
Phil Renaud
4b91c17dfa [ui, ci] retain artifacts from test runs including test timing (#24555)
* retain artifacts from test runs including test timing

* Pinning commit hashes for action helpers

* trigger for ui-test run

* Trying to isolate down to a simple upload

* Once more with mkdir

* What if we just wrote our own test reporter tho

* Let the partitioned runs handle placement

* Filter out common token logs, add a summary at the end, and note failures in logtime

* Custom reporter cannot also have an output file, he finds out two days late

* Aggregate summary, duration, and removing failure case

* Conditional test report generation

* Timeouts are errors

* Trying with un-partitioned input json file

* Remove the commented-out lines for main-only runs

* combine-ui-test-results as its own script
2024-12-03 09:56:06 -05:00
Daniel Bennett
e963d55ea0 release: always use service user for git ops (#24546) 2024-12-02 10:58:43 -06:00
dependabot[bot]
b290e753c3 chore(deps): bump actions/setup-node from 4.0.4 to 4.1.0 (#24300)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4.0.4 to 4.1.0.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](0a44ba7841...39370e3970)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-24 09:28:17 -05:00
Piotr Kazmierczak
ccba08a9e6 release: fix typo in the LAST_RELEASE sed regex (#24403) 2024-11-08 17:39:06 +01:00
James Rasell
155eac50e9 ci: Fix retrieving of Vault secrets for build workflow. (#24366) 2024-11-05 16:00:19 +00:00
dependabot[bot]
f75e2c276e chore(deps): bump actions/checkout from 4.2.1 to 4.2.2 (#24298) 2024-11-04 11:42:37 +00:00