CI Automation/windows10 aarch64: Difference between revisions
(Initial revision) |
(Added section to install) |
||
| Line 20: | Line 20: | ||
Currently an array of 9 machines are hosted at [https://bitbar.com/ Bitbar] in the United States. | Currently an array of 9 machines are hosted at [https://bitbar.com/ Bitbar] in the United States. | ||
= | = Setup = | ||
Tests that are run against windows10-aarch64 execute using [https://github.com/taskcluster/generic-worker Taskcluster Generic-Worker]. These are installed as a service on the Windows 10 ARM64 manually or via [https://github.com/mozilla-releng/OpenCloudConfig OpenCloudConfig]. | Tests that are run against windows10-aarch64 execute using [https://github.com/taskcluster/generic-worker Taskcluster Generic-Worker]. These are installed as a service on the Windows 10 ARM64 manually or via [https://github.com/mozilla-releng/OpenCloudConfig OpenCloudConfig]. | ||
A brief walkthrough of the steps to have Taskcluster Generic-Worker running on Windows 10 ARM64 will be provided. | |||
== Using only generic-worker == | |||
Follow this step to install Taskcluster Generic-Worker on the hardware, and have it launch as a service. After following these steps, the hardware should be ready to accept any tasks started on Taskcluster. | |||
Instruction originally from [https://bugzilla.mozilla.org/show_bug.cgi?id=1522997#c2 1522997]. | |||
'''Prerequisites''' | |||
* disable Windows S mode | |||
* disable User Account Control | |||
* disable Windows Firewall | |||
* download NSSM to C:\nssm-2.24\ | |||
* create "Remote Desktop Users" group: | |||
* net localgroup "Remote Desktop Users" /add | |||
* log in to Taskcluster | |||
* request scope `assume:project:taskcluster:generic-worker-tester` | |||
'''Steps''' | |||
# download the current 386 release of `generic-worker-windows-386.exe` from [https://github.com/taskcluster/generic-worker/releases taskcluster generic-worker]. | |||
# download the latest 386 version of livelog.exe and taskcluster-proxy.exe. | |||
# create new directory C:\generic-worker. | |||
# move the three executable files under C:\generic-worker. | |||
# rename generic-worker-windows-386.exe to generic-worker.exe. | |||
# generate two signing keys: | |||
* generic-worker new-openpgp-keypair --file <unique_file_name> | |||
* generic-worker new-ed25519-keypair --file <unique_file_name> | |||
# create generic-worker.config and include the following: | |||
# launch cmd.exe with Administrator rights. | |||
# cd c:\generic-worker | |||
# generic-worker.exe install service --config generic-worker.config --nssm c:\nssm-2.24\win32\nssm.exe | |||
# reboot once installed. | |||
# launch cmd.exe with Administrator rights. | |||
# sc query "Generic Worker" | |||
== Using OpenCloudConfig == | |||
This is the method that is used in production. | |||
Steps originally taken from [https://bugzilla.mozilla.org/show_bug.cgi?id=1520432#c2 1520432]. | |||
# Invoke-Expression (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/mozilla-releng/OpenCloudConfig/aarch64/userdata/rundsc.ps1') | |||
= Currently Running = | = Currently Running = | ||
Revision as of 23:35, 25 February 2019
Overview
With the announcement of the Qualcomm-Mozilla partnership came the need to release a version of Firefox for the ARM64 architecture.
Since mid-January 2019 the CI-A team has been working to enable existing test harnesses, continuous integration tests and other tools to run on Windows 10 ARM64.
Information
Hardware
- Make: Lenovo
- Model: C630 YOGA
- Processor: Qualcomm Snapdragon 850 3.0GHz
- Cores: 8
- Memory: 8GB
- Disk: 128GB SSD
Hosting
Currently an array of 9 machines are hosted at Bitbar in the United States.
Setup
Tests that are run against windows10-aarch64 execute using Taskcluster Generic-Worker. These are installed as a service on the Windows 10 ARM64 manually or via OpenCloudConfig.
A brief walkthrough of the steps to have Taskcluster Generic-Worker running on Windows 10 ARM64 will be provided.
Using only generic-worker
Follow this step to install Taskcluster Generic-Worker on the hardware, and have it launch as a service. After following these steps, the hardware should be ready to accept any tasks started on Taskcluster.
Instruction originally from 1522997.
Prerequisites
- disable Windows S mode
- disable User Account Control
- disable Windows Firewall
- download NSSM to C:\nssm-2.24\
- create "Remote Desktop Users" group:
* net localgroup "Remote Desktop Users" /add
- log in to Taskcluster
- request scope `assume:project:taskcluster:generic-worker-tester`
Steps
- download the current 386 release of `generic-worker-windows-386.exe` from taskcluster generic-worker.
- download the latest 386 version of livelog.exe and taskcluster-proxy.exe.
- create new directory C:\generic-worker.
- move the three executable files under C:\generic-worker.
- rename generic-worker-windows-386.exe to generic-worker.exe.
- generate two signing keys:
* generic-worker new-openpgp-keypair --file <unique_file_name> * generic-worker new-ed25519-keypair --file <unique_file_name>
- create generic-worker.config and include the following:
- launch cmd.exe with Administrator rights.
- cd c:\generic-worker
- generic-worker.exe install service --config generic-worker.config --nssm c:\nssm-2.24\win32\nssm.exe
- reboot once installed.
- launch cmd.exe with Administrator rights.
- sc query "Generic Worker"
Using OpenCloudConfig
This is the method that is used in production.
Steps originally taken from 1520432.
- Invoke-Expression (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/mozilla-releng/OpenCloudConfig/aarch64/userdata/rundsc.ps1')
Currently Running
Currently supported list of tests include:
- awsy
- mochitest (all flavors, including e10s)
- web-platform-tests (all flavors)
- reftests
Supported, requires non-artifact build:
- jittest
- gtests
- cppunittest
For an up-to-date definition, please refer to this file.
Bugs
These are the top-level bugs; the recommended view is tree.
32 Total; 5 Open (15.63%); 27 Resolved (84.38%); 0 Verified (0%);