summaryrefslogtreecommitdiff
path: root/app-admin/amazon-ec2-init/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /app-admin/amazon-ec2-init/files
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'app-admin/amazon-ec2-init/files')
-rw-r--r--app-admin/amazon-ec2-init/files/amazon-ec2.init34
1 files changed, 34 insertions, 0 deletions
diff --git a/app-admin/amazon-ec2-init/files/amazon-ec2.init b/app-admin/amazon-ec2-init/files/amazon-ec2.init
new file mode 100644
index 000000000000..29ce3aabd6a8
--- /dev/null
+++ b/app-admin/amazon-ec2-init/files/amazon-ec2.init
@@ -0,0 +1,34 @@
+#!/sbin/openrc-run
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+depend() {
+ before hostname
+ need net.eth0
+}
+
+start() {
+ einfo "Fetching metadata from EC2 servers"
+
+ ebegin " hostname"
+ local hostname=$(wget -t 2 -T 5 -q -O - http://169.254.169.254/latest/meta-data/local-hostname)
+ echo "hostname=${hostname}" >> /etc/conf.d/hostname
+ eend $?
+
+ ebegin " SSH keys"
+
+ mkdir -p /root/.ssh
+
+ local keys=$(wget -t 2 -T 5 -q -O - http://169.254.169.254/latest/meta-data/public-keys/ | cut -d = -f 1 | xargs echo)
+ [ -n "${keys}" ] && \
+ wget -t 2 -T 5 -q -O - $(for key in $keys; do echo "http://169.254.169.254/latest/meta-data/public-keys/$key/openssh-key"; done) \
+ >> /root/.ssh/authorized_keys \
+ 2>/dev/null
+
+ if [ -f /root/.ssh/authorized_keys ]; then
+ chown root:root /root/.ssh/authorized_keys
+ chmod 0600 /root/.ssh/authorized_keys
+ fi
+
+ eend $?
+}