Что я безуспешно пытался сделать в разделе пользовательских данных AWS EC2:
#!/bin/bash
sudo curl -s "https://get.sdkman.io" | bash
#!/bin/bash
sudo curl --output-dir "/home/ec2-user/" -s "https://get.sdkman.io" | bash
Проблема в том, что папка .sdkman в вышеуказанных случаях не хранится внутри /home/ec2-user/.sdkman, а всегда хранится в корневой папке в разделе /.sdkman для автоматического запуска экземпляра EC2 с пользовательскими данными. (С другой стороны, будет работать ручная установка через cmd)
Который не может выполнить следующую следующую команду для установки sbt с помощью пользовательских данных:
source "/home/ec2-user/.sdkman/bin/sdkman-init.sh"
(Принимая, что папка .sdkman хранится в корневой папке) Я также попытался вместо этого использовать:
source ".sdkman/bin/sdkman-init.sh"
source "/.sdkman/bin/sdkman-init.sh"
но это не работает и возвращает следующую ошибку:
find: ‘/home/ec2-user/.sdkman/src’: No such file or directory
find: ‘/home/ec2-user/.sdkman/ext’: No such file or directory
touch: cannot touch ‘/home/ec2-user/.sdkman/var/delay_upgrade’: No such file or directory
-bash: /home/ec2-user/.sdkman/var/candidates: No such file or directory
-bash: __sdkman_echo_debug: command not found
Как это выглядит с помощью команды source, я не могу перейти ниже /home/ec2-user/, так как она всегда добавляется обратно в путь.
Дополнительные ресурсы: https://sdkman.io/install
Экземпляр AWS EC2: Amazon Linux 2 AMI (HVM) - Ядро 5.10 // t3a.xlarge
Любая помощь в том, как я могу установить sbt на экземпляр AWS EC2, автоматизированный с помощью пользовательских данных, высоко ценится!