Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build: remove 32-bit ARM builds #23189

Merged
merged 3 commits into from
Jun 5, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 3 additions & 8 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ jobs:
strategy:
matrix:
goos: [linux]
goarch: ["arm", "arm64", "amd64"]
goarch: ["arm64", "amd64"]
fail-fast: true

name: Go ${{ needs.get-go-version.outputs.go-version }} ${{ matrix.goos }} ${{ matrix.goarch }} build
Expand Down Expand Up @@ -170,16 +170,11 @@ jobs:
sudo apt-get update
sudo apt-get install -y \
binutils-aarch64-linux-gnu \
binutils-arm-linux-gnueabihf \
gcc-aarch64-linux-gnu \
gcc-arm-linux-gnueabihf \
gcc-multilib-arm-linux-gnueabihf
gcc-aarch64-linux-gnu

- name: Set gcc
run: |
if [ "${{ matrix.goarch }}" == "arm" ]; then
echo "CC=arm-linux-gnueabihf-gcc" >> "$GITHUB_ENV"
elif [ "${{ matrix.goarch }}" == "arm64" ]; then
if [ "${{ matrix.goarch }}" == "arm64" ]; then
echo "CC=aarch64-linux-gnu-gcc" >> "$GITHUB_ENV"
fi

Expand Down
9 changes: 1 addition & 8 deletions GNUmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -49,12 +49,9 @@ LAST_RELEASE ?= v1.8.0
default: help

ifeq (Linux,$(THIS_OS))
ALL_TARGETS = linux_386 \
linux_amd64 \
linux_arm \
ALL_TARGETS = linux_amd64 \
linux_arm64 \
linux_s390x \
windows_386 \
windows_amd64
endif

Expand Down Expand Up @@ -96,10 +93,6 @@ endif
CC=$(CC) \
go build -trimpath -ldflags "$(GO_LDFLAGS)" -tags "$(GO_TAGS)" -o $(GO_OUT)

ifneq (armv7l,$(THIS_ARCH))
pkg/linux_arm/nomad: CC = arm-linux-gnueabihf-gcc
endif

ifneq (aarch64,$(THIS_ARCH))
pkg/linux_arm64/nomad: CC = aarch64-linux-gnu-gcc
endif
Expand Down
9 changes: 0 additions & 9 deletions build_linux_arm.go

This file was deleted.

81 changes: 44 additions & 37 deletions website/content/docs/release-notes/nomad/v1_8_x.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,11 @@ We are pleased to announce the following Nomad updates.

## Release highlights

- **Long Term Support Release (Enterprise):** Nomad 1.8 introduces a [long
term support release](/nomad/docs/enterprise#long-term-support-lts-releases) which provides extended maintenance (two years of
critical fixes provided through minor releases and efficient upgrades
(support for direct upgrades from one LTS release to the next).
- **Long Term Support Release (Enterprise):** Nomad 1.8 introduces a [long term
support release](/nomad/docs/enterprise#long-term-support-lts-releases) which
provides extended maintenance (two years of critical fixes provided through
minor releases and efficient upgrades (support for direct upgrades from one
LTS release to the next).

- **Exec2 Task Driver (beta):** The `exec2` driver is used to execute a
command for a task. It offers a security model optimized for running
Expand All @@ -25,22 +26,23 @@ We are pleased to announce the following Nomad updates.
filesystem isolation based on chroot, which provide an enhanced security
profile and improved performance for the Nomad operator. Refer to [Exec2 Task
Driver](/nomad/plugins/v1.8.x/drivers/exec2) for more details.

- **Transparent proxy support for Consul service mesh:** Transparent Proxy
introduces a more seamless way of dialing upstream services when Consul service
mesh is enabled. Users can configure services to use transparent proxy with a
new [`transparent_proxy`](/nomad/docs/v1.8.x/job-specification/transparent_proxy)
block. When a service is configured to use transparent proxy, workloads can now dial the
block. When a service is configured to use transparent proxy, workloads can now dial the
service using a virtual IP Consul DNS name.

- **Consul API Gateway for Nomad:** Consul API Gateway on Nomad is now
officially supported. A prescriptive job specification on
[hashicorp-guides/consul-api-gateway-on-nomad](https://github.com/hashicorp-guides/consul-api-gateway-on-nomad)
along with a supporting [tutorial](/nomad/tutorials/integrate-consul/deploy-api-gateway-on-nomad) on
how to securely deploy Consul API gateway on Nomad.

- **Re-worked Jobs page in the web UI with live updates:** Within the [Jobs index](/nomad/tutorials/web-ui/web-ui-workload-info#list-jobs)
page Nomad has made a few improvements:

- **Re-worked Jobs page in the web UI with live updates:** Within the [Jobs
index](/nomad/tutorials/web-ui/web-ui-workload-info#list-jobs) page Nomad has
made a few improvements:

- **Prioritize showing the current state over historical state for jobs:**
Previously, long-garbage-collected allocation placement failures, lost nodes,
Expand All @@ -49,36 +51,38 @@ We are pleased to announce the following Nomad updates.
healthy job looked like it had failures, when in fact Nomad had replaced or
rescheduled those failures. Now, the jobs list tries to show accurate
allocation information and meaningful statuses (like "Degraded", or
"Recovering") to better illustrate the current state of a job.
"Recovering") to better illustrate the current state of a job.
- **Server-side pagination:** For users with many thousands of jobs, the main
landing page for the web UI will no longer have a noticeable delay on
rendering. Users can control page length and filter paginated jobs
appropriately.
appropriately.
- **Live updates:** Previously, users had to manually refresh
the page to see newly created jobs, or to hide jobs that had been stopped and
garbage-collected. Now, the jobs list will update in real-time as jobs are
created, updated, or removed. Further, any changes to allocations of jobs
on-page will be reflected in the status of that job in real-time.

- **Time based task execution:** Using a CRON-like syntax, operators can now
[schedule](/nomad/docs/job-specification/schedule) when tasks should execute and when they should stop. This provides
governance for tasks executed from jobs, and allows operators to easily opt-in
or opt-out of a schedule that governs when the task can run through the web based UI.
[schedule](/nomad/docs/job-specification/schedule) when tasks should execute
and when they should stop. This provides governance for tasks executed from
jobs, and allows operators to easily opt-in or opt-out of a schedule that
governs when the task can run through the web based UI.

- **Sentinel policy management in the Web UI:** Enterprise users can manage
Sentinel policies directly within the Nomad UI. Users can create a Sentinel
policy based on a template provided from the UI or create policies directly
using an editor for Sentinel policies. Refer to [Sentinel policies](/nomad/tutorials/governance-and-policy/sentinel)
to learn more about how to use Sentinel within Nomad.

- **nomad-bench:** Nomad now provides a testing framework through [nomad-bench](https://github.com/hashicorp-forge/nomad-bench)
which provisions infrastructure used to run tests and benchmarks against
Nomad test clusters. The infrastructure consists of Nomad test clusters that
each have a set of servers with hundreds or thousands of simulated nodes
created using nomad-nodesim. The Nomad server processes are not simulated and
are expected to run on their own hosts, mimicking real-world deployments.
Metrics are then gathered from the Nomad servers for use with benchmarking
and load testing.
using an editor for Sentinel policies. Refer to [Sentinel
policies](/nomad/tutorials/governance-and-policy/sentinel) to learn more about
how to use Sentinel within Nomad.

- **nomad-bench:** Nomad now provides a testing framework through
[nomad-bench](https://github.com/hashicorp-forge/nomad-bench) which provisions
infrastructure used to run tests and benchmarks against Nomad test
clusters. The infrastructure consists of Nomad test clusters that each have a
set of servers with hundreds or thousands of simulated nodes created using
nomad-nodesim. The Nomad server processes are not simulated and are expected
to run on their own hosts, mimicking real-world deployments. Metrics are then
gathered from the Nomad servers for use with benchmarking and load testing.

## What's deprecated

Expand All @@ -87,30 +91,33 @@ We are pleased to announce the following Nomad updates.
support will be removed and the repo will be archived when Nomad 1.9 is
released. Users are encouraged to migrate their workloads to another task
driver such as the built-in Docker task driver[/nomad/docs/drivers/docker].

- **ECS Task driver:** The remote [ECS Task
Driver](https://developer.hashicorp.com/nomad/plugins/drivers/remote/ecs) is
now deprecated. Official support will be removed and the repo will be
archived when Nomad 1.9 is released. Users are encouraged to migrate their
workloads to Amazon ECS or to another Nomad task driver.

- **`stop_after_client_disconnect`, `max_client_disconnect`,
`prevent_reschedule_on_lost`:** Nomad 1.8.0 introduces a [disconnect](/nomad/docs/job-specification/disconnect)
block meant to group all the configuration options related to disconnected
client's and server's behavior, causing the deprecation of the fields
stop_after_client_disconnect, max_client_disconnect and
prevent_reschedule_on_lost. This block also introduces new options for
allocations reconciliation if the client regains connectivity.


`prevent_reschedule_on_lost`:** Nomad 1.8.0 introduces a
[disconnect](/nomad/docs/job-specification/disconnect) block meant to group
all the configuration options related to disconnected client's and server's
behavior, causing the deprecation of the fields stop_after_client_disconnect,
max_client_disconnect and prevent_reschedule_on_lost. This block also
introduces new options for allocations reconciliation if the client regains
connectivity.

- **32-bit builds**: Support for 32-bit architectures is now deprecated. Nomad
releases will no longer include binaries built for 32-bit platforms starting
with Nomad 1.9.

## What's removed

- **raw_exec option `no_cgroups`:** In Nomad 1.7.0 the raw_exec plugin option
for no_cgroups became ineffective. Starting in Nomad 1.8.0 attempting to set
the no_cgroups in raw_exec plugin configuration will result in an error when
starting the agent.


## Upgrading

For more detailed information, please refer to the [upgrade details
Expand Down
Loading