Commit Graph

111 Commits

Author SHA1 Message Date
Michael Marineau
41a64f6da1 oem/ami: update path to ami scripts directory
The ami builder host now has a proper checkout of the scripts repo.
2015-04-22 18:33:07 -07:00
Michael Marineau
db2404664a oem/ami: make import zone and bucket configurable
The intent is to export the bucket and optionally the zone in the
environment alone with the AWS auth credentials.
2015-04-21 16:29:12 -07:00
Michael Marineau
1508b44722 oem/ami: add new import script, replaces build_ebs_on_ec2.sh
This script uses the EC2 volume import tools instead of attaching and
writing to an EBS volume. This mechanism will be useful for creating
AMIs in isolated EC2 regions and can be run from any host with API
access and the EC2 tools.

TODO: Allow region to be specified and automatically create region-local
S3 buckets as needed. This version hard codes a bucket only usable by
our dev AWS account, not prod. Later on: move to a more compact disk
format like VMDK.
2015-04-21 11:54:50 -07:00
Alex Crawford
e9566a5749 oem/azure: add pre-publish blob copy 2015-04-08 11:45:30 -07:00
Alex Crawford
d8e808c061 oem/ami: update tests for etcd2
The v1 API has been removed, so use v2 instead. The 10-second sleep was
added because the fleet tests were failing without it. My guess is that
etcd needed some time to warm up before we flooded it with requests.
2015-03-25 22:42:25 -07:00
Alex Crawford
80e887dd8a oem/azure: add share-image.sh 2015-02-27 16:47:45 -08:00
Alex Crawford
4fa2583d7c oem/azure: add publish.sh 2015-02-27 16:47:45 -08:00
Alex Crawford
08f2d4cd23 oem/azure: add replicate-image.sh 2015-02-27 16:47:45 -08:00
Alex Crawford
9cd1553286 oem/azure: add unreplicate-image.sh 2015-02-27 16:47:45 -08:00
Alex Crawford
998c7e0939 oem/azure: set more image metadata 2015-02-27 16:47:45 -08:00
Alex Crawford
f60f0631bf oem/azure: fix json parsing of azure cli output 2015-02-27 16:47:45 -08:00
Alex Crawford
64b10c1faf oem/ami: fix ami_all.json
This was not a valid json document before. Actually make this an object.
2015-02-06 14:13:54 -08:00
Alex Crawford
7d916b812a oem/azure: add set-image-icon.sh 2014-12-24 18:21:26 -08:00
Alex Crawford
febf7a064e scripts/oem/ami: fix bad array subscript
Broken in 8abceaa20e.
2014-11-17 11:57:46 -08:00
Alex Crawford
0b1dc3c712 scripts/oem/ami: output AMI list in JSON format 2014-11-06 20:45:18 -08:00
Alex Crawford
b35768ff8c scripts/oem/ami: bump PV-GRUB AKIs to 1.04 in all regions 2014-10-31 20:38:27 -07:00
Alex Crawford
8abceaa20e scripts/oem/ami: consolidate regions and AKI ids 2014-10-31 20:34:45 -07:00
Alex Crawford
acbc3a4b0b ami: add eu-central-1 to list of AWS regions 2014-10-28 14:44:57 -07:00
Michael Marineau
51df57bb0b ami: wait for new volume to become available before attaching
Today EC2's volume creation is a bit less instant than usual.
2014-10-14 12:10:29 -07:00
Brian 'Redbeard' Harrington
29140526c9 fix: create empty file if it does not exist
previously check_etag.sh would not create a blank file if it did
not exist.  The result was that the first time check_etag.sh was
run it would always exit non-zero.
2014-09-04 14:04:25 -07:00
Michael Marineau
d5969d1a23 amis: update publish script for new block device mapping 2014-07-31 16:06:08 -07:00
Michael Marineau
f72d744a7a amis: switch back to sda for root PV volume, add publish wrapper
If additional EBS volumes are mapped to a PV instance using a "sd*" name
they will always be ordered by the hypervisor before "xvd*" devices,
again ignoring the root device definition. This applies to all PV
instance types so we cannot get away with just poo-pooing m1.small.

We will need to call attention to this since it requires users who set
the volume size via APIs to use the name "/dev/sda" again.
2014-07-30 14:06:44 -07:00
Michael Marineau
a53ff2a03b amis: run build script as normal user
This reduces the awkwardness of passing credentials to the build job.

Replace run.sh with assorted example scripts for prod, master, etc.
2014-07-28 13:14:36 -07:00
Michael Marineau
f6801e6b21 amis: split build/copy and publishing publicly into different steps
For a long time these scripts have always set images as public
regardless of whether the image was a working production image or not.
This may lead users to boot random development images if they happen to
pop up to the top of Amazon's terrible AMI search page.
2014-07-28 13:14:36 -07:00
Michael Marineau
d0d41a185f ami: configure etcd with public addresses
When I created the new AMI build host I just accepted the default
'wizard' security group which seems to have placed the host in a VPC.
There doesn't seem to be a way to fix this and as-is the build host
cannot access the private addresses on the test VMs it launches.
Switching to the public ones work fine though. Didn't notice this at
first because it is only a problem when etcd sends a redirect.
2014-07-15 12:12:43 -07:00
Michael Marineau
b707b7c628 ami: fix generating ami lists 2014-07-13 20:41:22 -07:00
Michael Marineau
2faa913198 ami: support HVM images in uploaded .txt files 2014-07-08 11:30:35 -07:00
Michael Marineau
3a21cd3eb9 ami: support HVM images in copy script 2014-07-08 11:30:35 -07:00
Michael Marineau
4cd9ed45ff ami: initial support for building HVM AMIs along side PV AMIs.
This just updates the build and test scripts. The copy and upload
scripts still need work to handle the new set of AMIs.
2014-07-08 11:30:34 -07:00
Brian 'Redbeard' Harrington
5532603e06 feat(OpenStack): Add new scripts to support OpenStack OEM handling
Included are scripts to monitor the CoreOS remote etag, as well as
load a new image into a OpenStack Glance image store.
2014-06-17 12:28:11 -07:00
Michael Marineau
2f93bdbd54 fix(oem/ami): Add option to copy to a single region.
It is not uncommon for a single region to fail with some internal server
error or other transient issue. Make it easy to fix up that one region.
2014-06-09 12:12:14 -07:00
Michael Marineau
a830e8ca49 fix(upload_ami_txt): One missed URL fixup
I added boards to the path for the other files but not ami_all.txt :(
2014-06-02 12:20:57 -07:00
Michael Marineau
d408e3c1f5 fix(build_library): Finish conversion to new bucket layout.
I started to move board files under a boards/ directory similar to how
the SDK is under sdk/ but didn't do so everywhere. This should finish
the job so everything is consistent now.

Note: This prefix is only used in developer and buildbot uploads. When
final releases are copied to $channel.release.core-os.net it doesn't use
the prefix since a) I already published urls without the prefix and b)
no sdk files are ever posted to the public release locations.
2014-05-28 14:47:30 -07:00
Michael Marineau
2e9911b978 fix(*): Migrate image storage to new buckets
- Automated builds drop SDK and binary packages into
  gs://builds.developer.core-os.net/ and the new download URL is
  http://builds.developer.core-os.net/ (COREOS_DEV_BUILDS)
- Change default upload path to gs://users.developer.core-os.net/ for
  misc developer builds. Official builds go elsewhere and will just be
  configured in buildbot/jenkins so some COREOS_OFFICIAL stuff is gone.
- Automated builds of images go to a private bucket,
  gs://builds.release.core-os.net which later gets copied to
  gs://alpha.release.core-os.net and friends by core_promote.
2014-05-21 13:21:07 -07:00
Michael Marineau
f2bafd7932 fix(oem/ami): Remove key options, update wrapper for beta
The key/cert authentication method doesn't work any more, just rely on
sourcing a file with the right env vars exported.

Re-enable parallel copy.

Add group option to wrapper and custom google storage url options.
2014-05-08 21:30:24 -07:00
Michael Marineau
2f8f0159f8 maint(*): Delete special case code for amd64-generic 2014-04-23 16:14:50 -07:00
Michael Marineau
d26a5f6c93 fix(oem/ami): Disable parallel AMI copying
The parallelism appears to be what was breaking the fussy ec2 command
line tools. Just do it serially instead.
2014-04-23 10:39:34 -07:00
Michael Marineau
68af44d961 fix(oem/ami): Fix uploading AMI id files, broken by a55f566b. 2014-03-22 15:19:07 -07:00
Michael Marineau
02425ef63e fix(oem/ami): Explicitly start etcd and fleet. 2014-03-21 09:19:56 -07:00
Michael Marineau
a55f566b40 fix(oem/ami): Add support for building release AMIs for amd64-usr 2014-03-20 17:28:09 -07:00
Michael Marineau
5bc66986cf feat(test_ami): Add coretest 2014-02-11 21:16:19 -08:00
Michael Marineau
6097c50ccf fix(test_ami): Update timeouts to what we've actually been using 2014-02-11 21:16:19 -08:00
Michael Marineau
02edace9da fix(test_ami): Drop old autotest based version.
This never worked and has been abandoned in favor of coretest.
2014-02-11 21:16:19 -08:00
Michael Marineau
5b9c5ce3ec fix(copy_ami.sh): Share copied snapshots with Amazon marketplace
Now all the permissions should be correct everywhere!
2013-10-18 18:28:58 -07:00
Michael Marineau
aecedce889 add(copy_ami): Move ami copying step to new script for easier testing
Fix some copying issues:
- Don't set AMI permissions until it is out of the pending state
- Set name and description properly
- Handle each region in parallel, mostly (these Java apps use lots of
  CPU for some reason so parallelism is limited, hence the sleeps).

Less important but also included here:
- Add run.sh and test_ami2.sh which are currently used in my release
  process. The alternate test script is used because the autotest stuff
  in the other script is broken right now.
2013-10-14 17:36:59 -07:00
Alex Polvi
e124560678 sneak in some permission stuff 2013-10-14 15:17:25 -07:00
Alex Polvi
21b7575714 fix whitespace 2013-10-14 14:05:28 -07:00
Alex Polvi
19008a43a7 feat(all-amis): add uploading off all ami regions 2013-10-14 14:03:36 -07:00
Alex Polvi
908d3368ba initial multi region support 2013-10-09 16:24:57 -07:00
Michael Marineau
592bc59cca add(upload_ami_txt): Upload text file that contains the AMI id. 2013-08-29 14:24:06 -07:00
Michael Marineau
693bf2f815 fix(test_ami): Fix help text. 2013-08-29 13:59:30 -07:00
Michael Marineau
cc2587921a fix(test_ami): Fix assorted mistakes from last review cycle.
This at least gets autotest running and logging into the hosts but none
of the tests are actually executed properly yet. One step at a time..
2013-08-28 15:37:09 -07:00
Brandon Philips
84a2619829 Merge pull request #91 from doodles526/master
Add autotest tests to test_ami.sh
2013-08-22 11:26:53 -07:00
Josh Deare
aec8cffb60 added autotest testing to test_ami 2013-08-22 10:10:34 -07:00
Michael Marineau
75c839a679 fix(test_ami): Bump socket startup timeout to 90 seconds.
I've observed networking between ec2 instances not start working for
somewhere between 40-50 seconds earlier today which caused the test to
fail despite the fact that everything came up properly eventually.
Upping to 90 seconds should better cope with the surprises Amazon has to
offer.
2013-08-22 00:13:47 -04:00
Michael Marineau
7f6cdde553 feat(test_ami): Add support for finding AMI by version.
This makes chaining the build and test ami scripts together easier.
2013-08-19 17:35:10 -04:00
Alex Polvi
a191ff9973 Used uuidgen
Refacted timeout section to be a loop
Added output for progress
Fixed indentation
2013-08-18 09:15:15 -07:00
Alex Polvi
f986ba2d03 test(ami-test): basic script for testing ami and bootstrapping 2013-08-17 00:51:50 -07:00
Michael Marineau
3ef4757fd4 fix(build_ebs_on_ec2.sh): Add --fail to all curl commands.
This is particularly important for the image availability pre-check
because without it we don't detect that the image is in-fact unavailable
when it doesn't exist and the 404 results in a error from bzip2.
2013-08-07 15:44:52 -04:00
Michael Marineau
37c56b64de feat(build_ebs_on_ec2): Fetch prod images by version, misc cleanup.
The build host will start generating production ami disk images so to
simplify the next step this script can automatically fetch them from
that location by version. The default sticks with the existing 'master'
versioning scheme. Added logging and turned off -x by default to make
the output log more readable.

Removing the zip_and_ship script since it isn't useful with officially
built disk images and only works with locally built images and a very
particular ec2 host. A different long term automation scheme will have
to be found.
2013-07-26 17:45:27 -04:00
Alex Polvi
5982943b4e add scripts 2013-07-25 07:50:45 -07:00