I wrote following script to be rendered via Terraform template for EC2 user data :
#!/bin/bash
yum update -y
yum install wget -y
wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
yum upgrade
amazon-linux-extras install java-openjdk11 -y
yum install jenkins -y
mkdir -p /var/lib/jenkins/init.groovy.d/
cat > /var/lib/jenkins/jenkins.install.UpgradeWizard.state << EOF
2.0
EOF
cat > /var/lib/jenkins/init.groovy.d/basic-security.groovy << EOF
#!groovy
import jenkins.model.*
import hudson.security.*
def instance = Jenkins.getInstance()
println "Creating local user 'admin'"
def hudsonRealm = new HudsonPrivateSecurityRealm(false)
hudsonRealm.createAccount('admin','${jenkins_admin_password}')
instance.setSecurityRealm(hudsonRealm)
def strategy = new FullControlOnceLoggedInAuthorizationStrategy()
instance.setAuthorizationStrategy(strategy)
instance.save()
EOF
chown -R jenkins:jenkins /var/lib/jenkins/
systemctl enable jenkins
systemctl start jenkins
cat > creds << EOF
admin:${jenkins_admin_password}
EOF
wget http://localhost:8080/jnlpJars/jenkins-cli.jar
java -jar jenkins-cli.jar -s http://localhost:8080/ -auth @creds install-plugin 'workflow-aggregator' -deploy -restart
The last command java -jar jenkins-cli.jar -s http://localhost:8080/ -auth @creds install-plugin 'workflow-aggregator' -deploy -restart
for Jenkins plugin install failed at launch:
[root@ip-172-1-1-143 /]# tail /var/log/cloud-init-output.log
workflow-aggregator is neither a valid file, URL, nor a plugin artifact name in the update center
No update center data is retrieved yet from: https://updates.jenkins.io/update-center.json
workflow-aggregator looks like a short plugin name. Did you mean ?null??
ERROR: Error occurred, see previous output.
Nov 14 22:27:36 cloud-init[18578]: util.py[WARNING]: Failed running /var/lib/cloud/instance/scripts/part-001 [5]
Nov 14 22:27:36 cloud-init[18578]: cc_scripts_user.py[WARNING]: Failed to run module scripts-user (scripts in /var/lib/cloud/instance/scripts)
Nov 14 22:27:36 cloud-init[18578]: util.py[WARNING]: Running module scripts-user (<module 'cloudinit.config.cc_scripts_user' from '/usr/lib/python2.7/site-packages/cloudinit/config/cc_scripts_user.pyc'>) failed
Cloud-init v. 19.3-45.amzn2 finished at Mon, 14 Nov 2022 22:27:36 +0000. Datasource DataSourceEc2. Up 219.42 seconds
But the same command works with no problem when run manually:
[root@ip-172-1-1-143 /]# java -jar jenkins-cli.jar -s http://localhost:8080/ -auth @creds install-plugin 'workflow-aggregator' -deploy -restart
Installing workflow-aggregator from update center
Could you advise what is wrong here?