In our E2E environment we've seen some flakiness with the Consul-related tests. As it turns out, the Consul agents are getting restarted every 90s or so because they're timing out their systemd notification. > consul.service: start operation timed out. Terminating. This appears to be a known issue in Consul and we'll try to contribute some help to hunt down the cause if they want help, but in the meantime let's remove it from our systemd unit files for the Consul agents. Ref: https://github.com/hashicorp/consul/issues/16844#issuecomment-1913282248
Packer Builds
These builds are run as-needed to update the AMIs used by the end-to-end test infrastructure.
What goes here?
- steps that aren't specific to a given Nomad build: ex. all Linux instances
need
jqandawscli. - steps that aren't specific to a given EC2 instance: nothing that includes an IP address.
- steps that infrequently change: the version of Consul or Vault we ship.
How is this used?
The AMIs built by these Packer configs are tagged with BuilderSha, which has
the value of the most recent commit that touched this directory.
The nightly E2E job runs a script to see if there are any AMIs that match the most recent commit that touched this directory, and if there aren't it will then build the AMIs. Then most recent AMI with a matching SHA is used for the nightly E2E run.
If you are changing this directory to build an AMI for testing, it's recommended that you change the name of the AMI or make sure that you've locally committed your changes so that your test AMI doesn't get picked up in the next nightly E2E run.
Running Packer builds
$ packer --version
1.6.4
# build Ubuntu Jammy AMI
$ ./build ubuntu-jammy-amd64
Debugging Packer Builds
To debug a Packer build
you'll need to pass the -debug and -on-error flags. You can then ssh into
the instance using the ec2_amazon-ebs.pem file that Packer drops in this
directory.
Packer doesn't have a cleanup command if you've run -on-error=abort. So when
you're done, clean up the machine by looking for "Packer" in the AWS console:
Q: What About Windows?
For now, we're using an Amazon base image directly.