Files
nexe/azure-pipelines.yml
bruce-one ca657b5b06 feat: use yarn fslib/zip for fs shimming (#1048)
* refactor: compile with esmoudle interop

* Rigidify code replacement by using Lodash templates.

* Generate zip file bundle.

* Use yarn's fslib to implement the fake filesystem.

Leverage the work done by yarn, rather than reimplementing from scratch.

This means the fake fs is now reading from a zip file in the binary.

A few methods need custom implementations as the fake fs is not
writable. These were copied and adjusted from the yarn ZipOpenFS.

* Add test suite using the built artefact.

Smoke tests the different fs methods.

Not perfect in any world, but better than nothing.

* Fix tsc on Windows - globbing doesn't work there.

There's probably a cleaner way to do this...

* Bump version.

* Dep bumps.

* fixup 9d57b32: make fs patch code clearer.

* fixup 3771c720: simplify test to just use require directly.

---------

Co-authored-by: calebboyd <caleb.boyd@gmail.com>
2023-08-20 14:43:06 -05:00

74 lines
1.9 KiB
YAML

schedules:
- cron: "0 8 * * *"
displayName: "Daily Build 1"
always: true
branches:
include:
- master
- cron: "0 13 * * *"
displayName: "Daily Build 2"
always: true
branches:
include:
- master
- cron: "0 19 * * *"
displayName: "Daily Build 3"
always: true
branches:
include:
- master
jobs:
- job: BaseBuild
timeoutInMinutes: 360
strategy:
matrix:
linux:
imageName: 'ubuntu-16.04'
mac:
imageName: 'macos-10.15'
windows_2017:
imageName: 'vs2017-win2016'
windows_2015:
imageName: 'vs2017-win2016'
alpine:
imageName: 'ubuntu-16.04'
pool:
vmImage: $(imageName)
steps:
- task: UsePythonVersion@0
displayName: Setup Python
inputs:
versionSpec: '2.7'
architecture: 'x64'
- task: NodeTool@0
displayName: Install Node
inputs:
versionSpec: '12.x'
- script: sudo apt-get update && sudo apt-get install -y libc6-dev-i386 gcc-multilib g++-multilib
condition: contains(variables['Agent.JobName'], 'linux')
displayName: Install Linux build dependencies
- script: npm config set msvs_version 2015
condition: contains(variables['Agent.JobName'], 'windows_2015')
displayName: Install Windows build dependencies
- script: npm install && npm run ci:build
displayName: Build Nexe
env:
GITHUB_TOKEN: $(PersonalGithubToken)
NEXE_VERBOSE: $(NEXE_VERBOSE)
msbuild_args: /3G
condition: not(contains(variables['Agent.JobName'], 'windows'))
- powershell: |
choco install nasm
npm install
npm run ci:build
displayName: Build Nexe (Windows)
condition: contains(variables['Agent.JobName'], 'windows')
env:
GITHUB_TOKEN: $(PersonalGithubToken)
NEXE_VERBOSE: $(NEXE_VERBOSE)
- script: npm run test:integration
displayName: Test built artefact
env:
NEXE_VERBOSE: $(NEXE_VERBOSE)
BUILD: ''