Skip to content

Commit 39bc4c7

Browse files
mattclaymriamah
authored andcommitted
Update tests to pass on macOS arm64 (#11544)
1 parent ee2992c commit 39bc4c7

File tree

6 files changed

+31
-13
lines changed

6 files changed

+31
-13
lines changed

tests/integration/targets/android_sdk/tasks/setup.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,11 @@
5252
- name: Symlink java
5353
become: true
5454
file:
55-
src: "/usr/local/opt/openjdk@17/libexec/openjdk.jdk"
55+
src: "{{ brew_prefix }}/opt/openjdk@17/libexec/openjdk.jdk"
5656
dest: "/Library/Java/JavaVirtualMachines/openjdk-17.jdk"
5757
state: link
58+
vars:
59+
brew_prefix: "{{ lookup('pipe', 'brew --prefix') }}"
5860
when:
5961
- ansible_facts.os_family == 'Darwin'
6062

tests/integration/targets/launchd/tasks/setup.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,11 @@
99
dest: "{{ launchd_plist_location }}"
1010
become: true
1111

12+
- name: ensure target directory exists
13+
file:
14+
path: /usr/local/sbin
15+
state: directory
16+
1217
- name: install the test daemon script
1318
copy:
1419
src: ansible_test_service.py

tests/integration/targets/npm/tasks/main.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,9 @@
2525
- include_tasks: run.yml
2626
vars:
2727
nodejs_version: '{{ item }}'
28-
nodejs_path: 'node-v{{ nodejs_version }}-{{ ansible_facts.system|lower }}-x{{ ansible_facts.userspace_bits }}'
28+
nodejs_path: 'node-v{{ nodejs_version }}-{{ ansible_facts.system|lower }}-{{ nodejs_arch }}'
29+
nodejs_arch: '{{ "x64" if ansible_architecture == "x86_64" else "arm64" if ansible_architecture in ("arm64", "aarch64") else ansible_architecture }}'
30+
nodejs_ext: '{{ ".tar.xz" if ansible_system == "Linux" else ".tar.gz" }}'
31+
nodejs_download: 'https://nodejs.org/dist/v{{ nodejs_version }}/{{ nodejs_path }}{{ nodejs_ext }}'
2932
with_items:
30-
- 7.10.1 # provides npm 4.2.0 (last npm < 5 released)
31-
- 8.0.0 # provides npm 5.0.0
32-
- 8.2.0 # provides npm 5.3.0 (output change with this version)
33+
- 16.20.2 # oldest node version with macOS arm64 support

tests/integration/targets/npm/tasks/setup.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,13 @@
33
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
44
# SPDX-License-Identifier: GPL-3.0-or-later
55

6-
- name: 'Download NPM'
6+
- name: Show Node.js Download URL
7+
debug:
8+
var: nodejs_download
9+
10+
- name: Download Node.js
711
unarchive:
8-
src: 'https://ansible-ci-files.s3.amazonaws.com/test/integration/targets/npm/{{ nodejs_path }}.tar.gz'
12+
src: '{{ nodejs_download }}'
913
dest: '{{ remote_tmp_dir }}'
1014
remote_src: true
1115
creates: '{{ remote_tmp_dir }}/{{ nodejs_path }}.tar.gz'

tests/integration/targets/yarn/tasks/main.yml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,12 @@
1414
- include_tasks: run.yml
1515
vars:
1616
nodejs_version: '{{ item.node_version }}'
17-
nodejs_path: 'node-v{{ nodejs_version }}-{{ ansible_facts.system|lower }}-x{{ ansible_facts.userspace_bits }}'
17+
nodejs_path: 'node-v{{ nodejs_version }}-{{ ansible_facts.system|lower }}-{{ nodejs_arch }}'
18+
nodejs_arch: '{{ "x64" if ansible_architecture == "x86_64" else "arm64" if ansible_architecture in ("arm64", "aarch64") else ansible_architecture }}'
19+
nodejs_ext: '{{ ".tar.xz" if ansible_system == "Linux" else ".tar.gz" }}'
20+
nodejs_download: 'https://nodejs.org/dist/v{{ nodejs_version }}/{{ nodejs_path }}{{ nodejs_ext }}'
1821
yarn_version: '{{ item.yarn_version }}'
1922
with_items:
20-
- {node_version: 4.8.0, yarn_version: 1.6.0} # Lowest compatible nodejs version
21-
- {node_version: 8.0.0, yarn_version: 1.6.0}
23+
- {node_version: 16.20.2, yarn_version: 1.22.22} # oldest node version with macOS arm64 support
2224
when:
2325
- not (ansible_facts.os_family == 'Alpine') # TODO

tests/integration/targets/yarn/tasks/run.yml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,20 @@
88
path: /usr/local/lib/nodejs
99
state: directory
1010

11-
- name: 'Download Nodejs'
11+
- name: Show Node.js Download URL
12+
debug:
13+
var: nodejs_download
14+
15+
- name: Download Node.js
1216
unarchive:
13-
src: 'https://ansible-ci-files.s3.amazonaws.com/test/integration/targets/yarn/{{ nodejs_path }}.tar.gz'
17+
src: '{{ nodejs_download }}'
1418
dest: '{{ remote_tmp_dir }}'
1519
remote_src: true
1620
creates: '{{ remote_tmp_dir }}/{{ nodejs_path }}.tar.gz'
1721

1822
- name: 'Download Yarn'
1923
unarchive:
20-
src: 'https://ansible-ci-files.s3.amazonaws.com/test/integration/targets/yarn/yarn-v{{yarn_version}}.tar.gz'
24+
src: 'https://github.com/yarnpkg/yarn/releases/download/v{{yarn_version}}/yarn-v{{yarn_version}}.tar.gz'
2125
dest: '{{ remote_tmp_dir }}'
2226
remote_src: true
2327
creates: '{{ remote_tmp_dir }}/yarn-v{{yarn_version}}_pkg.tar.gz'

0 commit comments

Comments
 (0)