diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index a2e4fb33c9..10ae7a26fb 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -2,8 +2,6 @@ NOTE: this repository uses a "Merge Forward" strategy Changes should be made in the earliest applicable branch, and merged forward through subsequent branches. -1. Create a PR into the oldest branch (`ubuntu-`) -2. After this PR has been merged create a `merge-to-` branch -3. Merge `ubuntu-` into `merge-to-` -4. Create a PR to merge `merge-to-` into `ubuntu-` -5. Repeat as needed for subsequent branches +1. PR should be created against the oldest stemcell branch, ex: `ubuntu-` +2. After this PR has been merged create a PR to merge `ubuntu-` into `ubuntu-` +3. Repeat as needed for subsequent stemcell line branches diff --git a/bosh-stemcell/lib/shellout_types/service.rb b/bosh-stemcell/lib/shellout_types/service.rb index d417a0693f..476b7b4ada 100644 --- a/bosh-stemcell/lib/shellout_types/service.rb +++ b/bosh-stemcell/lib/shellout_types/service.rb @@ -27,7 +27,7 @@ def check_service_enabled(runlevel) stdout, stderr, status = @chroot.run("cat", "/etc/*release") raise stderr.to_s if status != 0 - raise "Cannot determine Linux distribution: #{stdout}" unless /Ubuntu/.match?(stdout) + raise "Cannot determine Linux distribution: #{stdout}" unless /Ubuntu|openSUSE/.match?(stdout) check_is_enabled_systemctl end diff --git a/bosh-stemcell/spec/stemcells/aws_spec.rb b/bosh-stemcell/spec/stemcells/aws_spec.rb index 8a9309fd5b..bf59f37cbc 100644 --- a/bosh-stemcell/spec/stemcells/aws_spec.rb +++ b/bosh-stemcell/spec/stemcells/aws_spec.rb @@ -24,6 +24,22 @@ end end + context "installed by bosh_aws_agent_settings" do + describe file("/var/vcap/bosh/agent.json") do + it { should be_valid_json_file } + + it "sets InstanceStorageDevicePattern for NVMe instance storage" do + config = JSON.parse(subject.content) + expect(config.dig("Platform", "Linux", "InstanceStorageDevicePattern")).to eq("/dev/nvme*n1") + end + + it "sets InstanceStorageManagedVolumePattern to exclude EBS volumes" do + config = JSON.parse(subject.content) + expect(config.dig("Platform", "Linux", "InstanceStorageManagedVolumePattern")).to eq("/dev/disk/by-id/nvme-Amazon_Elastic_Block_Store_*") + end + end + end + describe "nvme" do describe "nvme-id finder" do subject { file("/sbin/nvme-id") } diff --git a/image-metalinks/ubuntu-jammy/ubuntu-jammy.meta4 b/image-metalinks/ubuntu-jammy/ubuntu-jammy.meta4 index 785564b2ba..c8faadd4ab 100644 --- a/image-metalinks/ubuntu-jammy/ubuntu-jammy.meta4 +++ b/image-metalinks/ubuntu-jammy/ubuntu-jammy.meta4 @@ -1,22 +1,22 @@ - fab1ec89357516ccedd49d3c1a2f9e8db258ce7e69bb158fdd3ea825b3e2556d89606f0bbb5f83117d3b437a955998a346cfda3b0ffdf7797e4941ad4187ed2a - 119afe900ff3339ae2f7edfd59b19582971f5d1de61e5bba3c269c8ea3233614 - d7e7142fc0486c0a3b8a5c3b317b47dbb2fd188d - 69c8530406c7669f7d99e5d8289a2b6f - 435214502 + b748ba44907447a03a8e161b370795221f94961f42d59684a5d3f5aef3d48aa523dca132825ce1abf983fca1fc96532c2db9bffbcf4d71714bcff63b5026d62f + a4fff818d92a51015e05337bc3085a06696122f2bff31cdd2053957d99b9ee25 + ab89630e24048ea311a4ee6a2964d3e1998177ed + 25d8f6bba0a5e43838922b5f704e580d + 435207580 https://storage.googleapis.com/bosh-os-images/ubuntu-jammy/ubuntu-jammy.tgz - 1083.0.0 + 1089.0.0 - be688838ca8686e5c90689bf2ab585cef1137c999b48c70b92f67a5c34dc15697b5d11c982ed6d71be1e1e7f7b4e0733884aa97c3f7a339a8ed03577cf74be09 - 01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b - adc83b19e793491b1c6ea0fd8b46cd9f32e592fc - 68b329da9893e34099c7d8ad5cb9c940 - 1 + 04c6305dd88f1f0fdb8c052c3161682a0320751c96e6e5b6bc0b948bd3c0745d250ff57be25a11e69c1cbc1faf49d6e4dbd9f16163ccdc6ee61f6bdb89e13732 + 52256f7644d5e043f59cd3799675e5b76577fc57b7ccac248349ec4a382b2643 + 17fb83a8835fffe0fa223470bd10451554cf9ca9 + d6447fb301e142d191d4d2ce0a39ae2b + 8289 https://storage.googleapis.com/bosh-os-images/ubuntu-jammy/usn-log.json - 1083.0.0 + 1089.0.0 metalink-repository-resource/0.0.0 - 2026-06-10T03:34:35.655940604Z + 2026-06-12T19:44:25.082634332Z diff --git a/stemcell_builder/stages/image_install_grub/apply.sh b/stemcell_builder/stages/image_install_grub/apply.sh index f65b430295..815b78cee3 100755 --- a/stemcell_builder/stages/image_install_grub/apply.sh +++ b/stemcell_builder/stages/image_install_grub/apply.sh @@ -37,6 +37,17 @@ add_on_exit "umount ${image_mount_point}/boot/efi" # == Guide to variables in this script (all paths are defined relative to the real root dir, not the chroot) +# work: the base working directory outside the chroot +# eg: /mnt/stemcells/aws/xen/ubuntu/work/work +# disk_image: path to the stemcell disk image +# eg: /mnt/stemcells/aws/xen/ubuntu/work/work/aws-xen-ubuntu.raw +# device: path to the loopback device mapped to the entire disk image +# eg: /dev/loop0 +# loopback_root_dev: device node mapped to the main partition in disk_image +# eg: /dev/mapper/loop0p1 +# image_mount_point: place where loopback_root_dev is mounted as a filesystem +# eg: /mnt/stemcells/aws/xen/ubuntu/work/work/mnt + # Generate random password random_password=$(tr -dc A-Za-z0-9_ < /dev/urandom | head -c 16)