Eu preciso instalar o SDK do Azure Service Fabric em uma VM Linux do ubuntu automaticamente. A instalação requer que você aceite um EULA. Como eu automatizaria a aceitação do EULA para que ele não solicitasse isso?
Etapas:
sudo sh -c 'echo "deb [arch=amd64] http://apt-mo.trafficmanager.net/repos/servicefabric/ trusty main" > /etc/apt/sources.list.d/servicefabric.list'
sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893
sudo apt-get update
sudo apt-get install servicefabricsdkcommon
O último comando requer a aceitação do EULA.
Em outro post, parece que você poderia usar algo como:
DEBIAN_FRONTEND=noninteractive apt-get install -y servicefabricsdkcommon
EDITAR:
Como mencionado nos comentários de @Elder_Geek, parece haver um bug que foi corrigido para resolver este problema e funciona, no entanto, quando tentei Dockerize isso não funcionou. o dbconf-set-selections se comporta de maneira diferente no Docker que pode impedir que ele funcione?
Dockerfile
FROM microsoft/vsts-agent:ubuntu-16.04-docker-1.11.2-standard
WORKDIR /vsts
RUN sudo sh -c 'echo "deb [arch=amd64] http://apt-mo.trafficmanager.net/repos/servicefabric/ trusty main" > /etc/apt/sources.list.d/servicefabric.list' \
&& sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893 \
&& sudo apt-get update -y \
&& sudo apt install debconf-utils
RUN echo "servicefabricsdkcommon servicefabricsdkcommon/accepted-eula-v1 select true" | sudo debconf-set-selections \
&& sudo apt-get -qq -y install servicefabricsdkcommon \
&& sudo /opt/microsoft/sdk/servicefabric/common/sdkcommonsetup.sh
O EULA ainda aparece, se eu executar o comando no meu host docker, ele funcionará bem.