系统配置:
Ubuntu 14.04
ansible 1.9.3
下面是main.yml文件
---
-
hosts: 127.0.0.1
connection: local
sudo: yes
tasks:
-
name: "Install packages to install android sdk"
with_items:
- libgl1-mesa-dev:i386
apt: "name={{ item }} state=installed"
sudo: yes
-
name: "Install Java"
with_items:
- default-jre
- default-jdk
- openjdk-7-jre
- openjdk-7-jdk
apt: "name={{ item }} state=installed"
sudo: yes
-
name: "Download sdk tools"
get_url: url=http://dl.google.com/android/android-sdk_r24.3.4-linux.tgz dest=/opt/android-sdk_r24.3.4-linux
register: sdk_file
-
name: "Unarchiving sdk tools"
command: tar xzf {{sdk_file.dest}}
sudo: yes
args:
chdir: /opt
creates: /opt/android-sdk-linux
-
name: "write permissions to android home"
file: path=/opt/android-sdk-linux state=directory recurse=yes mode=0777
-
name: "write permission to @R_121_502[email protected]"
file: path=/opt/android-sdk-linux/tools/lib/@R_121_502[email protected] mode=0777
-
name: add android to path
lineinfile: >
dest=/etc/environment
state=present
backrefs=yes
regexp='PATH=(["]*)((?!.*?/opt/android-sdk-linux/tools).*?)(["]*)$'
line="PATH=\1\2:/opt/android-sdk-linux/tools\3"
-
name: "Install Android SDKs"
shell: "android update sdk -u -a -t {{ item }}"
with_items:
- "tools"
- "platform-tools"
- "build-tools-23.0.1"
- "build-tools-22.0.1"
- "android-23"
- "android-22"
- "android-21"
- "extra"
args:
executable: "/bin/bash"
environment:
PATH: /opt/android-sdk-linux/tools/:$PATH
可以从PATH访问android.
还看到我从bash导出/ opt / android-sdk-linux / tools进入我的PATH并且我能够运行android更新命令,同时我还以递归方式将chmod 777权限设置为/ opt / android-sdk-linux但不知何故ansible无法访问它.
我看了this问题,但这没有帮助.
解决方法:
正如我所见,你正试图在/ opt / android-sdk-linux / tools /中使用android可执行文件.尝试使用它,不再需要PATH
name: "Install Android SDKs"
shell: "/opt/android-sdk-linux/tools/android update sdk -u -a -t {{ item }}"
with_items:
- "tools"
- "platform-tools"
- "build-tools-23.0.1"
- "build-tools-22.0.1"
- "android-23"
- "android-22"
- "android-21"
- "extra"
args:
executable: "/bin/bash"
另外我建议使用以下作为shell命令来接受所有许可证.
shell: "echo \"y\" | /opt/android-sdk-linux/tools/android update sdk -u -a -t {{ item }}"
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。