aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Austein <sra@arrcus.com>2018-06-29 17:03:20 -0400
committerRob Austein <sra@arrcus.com>2018-06-29 17:03:20 -0400
commit2c4af3f12cb83d746552cab8abf9d25f9722bb49 (patch)
treec99def0db03d4dec95d9a1dae16a5352f5195b11
parent4e7971e6681444d546ef3e9e4d1e1549d70dd7e0 (diff)
Update
-rwxr-xr-xbaiji18
1 files changed, 17 insertions, 1 deletions
diff --git a/baiji b/baiji
index ba0b58f..fb1c2df 100755
--- a/baiji
+++ b/baiji
@@ -28,7 +28,7 @@ def cmd(*args):
@cmd(arg("--dist", default = "jessie", help = "distribution for base docker image"),
arg("--tag", default = "baiji:jessie", help = "tag to use for constructed base docker image"),
)
-def create(args):
+def create_base(args):
"""
Construct a base Docker image.
@@ -57,6 +57,22 @@ def create(args):
sys.exit("Couldn't construct stage 2 base image")
+@cmd(arg("--tag", default = "baiji:jessie", help = "tag of base docker image to update"),
+)
+def update_base(args):
+ """
+ Update a base Docker image.
+ """
+
+ docker = subprocess.Popen(("docker", "build", "-t", args.tag, "-"), stdin = subprocess.PIPE)
+ docker.communicate('''\
+ FROM {args.tag}
+ RUN apt-get update && apt-get upgrade -y --with-new-pkgs --no-install-recommends && apt-get autoremove && apt-get clean
+ '''.format(args = args))
+ if docker.wait():
+ sys.exit("Couldn't update image base image")
+
+
# Parse arguments and dispatch to one of the commands above.
def main():