Commit graph

62 commits

Author SHA1 Message Date
Connor Peet 6813d7ccbc
chore: update to rust 1.77 (#209563)
* chore: update to rust 1.77

* fix tests
2024-04-04 20:34:01 +02:00
João Moreno e5515ac702
Adopt 1ES PT (#207844)
* extend 1es pipeline template

* oops

* fix template references

* argh

* hmm

* hm

* hm

* use outputs for compilation artifact

* this

* use 1ES.PublishPipelineArtifact@1 instead of publish

* more 1ES.PublishPipelineArtifact@1 adoption

* provide windows pool for sdl sources

* sdl

* fix pools

* fix macos

* disable sbom for intermediate artifacts

* use mariner linux

* try inline tsa options

* fix credscan

* hm

* sudo it

* more suppressions

* be explicit with SBOM build drop paths

* fix indentation

* fix file extensions

* fix cli sbom build drop paths

* fix more build

* fix unzip cli

* careful with _manifest in artifacts

* do not close file

* add logging

* debug

* use snapcraft container

* remove size check

* fix macos cli step

* fix snap permissions

* fix macos

* better logs

* fix snap

* more cred scan suppressions

* even more supressiong

* alpine-arm64: try using x64

* Revert "alpine-arm64: try using x64"

This reverts commit bf2003bf60.

* test docker

* I wonder

* logs

* hm

* fix indentation

* hm

* hm

* fix snap finds

* remove auth

* use hostArchitecture

* snap: limit find

* hm

* sudo

* Add validateToolOutput: None to the build pipeline

* bring back sdl-scan

* try all tools: true

* use release

* Update Azure Pipelines YAML file for Linux product build and test

* hm

* hm

* same for win32

* hm

* hm

* Revert "hm"

This reverts commit 1b9dcae85b.

* use branch

* fix template file

* fix template paths
2024-03-21 14:16:32 +01:00
Robo 9db1b0571e
fix: sysroot used for client (#204559) 2024-02-07 05:50:23 +01:00
Robo 8a98afa440
chore: legacy server cleanups (#204501)
* fix: revert glibc requirements for tunnel cli

* chore: address feedback on wording

* fix: only store state when user allows the prompt

* chore: update checksums for sysroot

* fix: store connection choice per distro

* update rpm deps-list

---------

Co-authored-by: Connor Peet <connor@peet.io>
2024-02-07 10:14:41 +09:00
Connor Peet 3ad2e082c5
eng: group cli build vs publish steps (#203920)
Fixes #203871
2024-01-31 11:22:50 -08:00
Connor Peet fde80ce4fb
eng: fix missing rustup command in build (#203462)
Only call rustup when explicitly installing
2024-01-25 17:56:24 +01:00
Robo f87fb292c3
ci: fix missing auth token for cli build (#200714) 2023-12-13 08:27:54 +01:00
Robo e7b5076dd7
refactor: use sysroots on linux prod pipeline (#192513)
* ci: use sysroots on linux prod pipeline to build native modules

* ci: rebuild after electron update
2023-12-12 11:39:00 +01:00
João Moreno 0b111a09a1
Publish to new CDN (#198154) 2023-11-16 07:19:59 +01:00
Raymond Zhao 880cb517e1
Add more SBOMs (#195736) 2023-10-17 15:55:55 -07:00
Raymond Zhao 18a25cd5d6
Clarify pipeline actions (#195197) 2023-10-11 09:05:00 -07:00
Connor Peet 2e37be2160
Adopt Terrapin / msrustup for the CLI (#188732)
* cli: use terrapin for cli builds

* update rust to 1.70 to allow ado artifacts feed on windows

* apparently manaul cargo login is required

* use msrustup

* rustup is no longer user

* update to 1.73

* add rust oss install
2023-10-08 17:18:22 -07:00
Connor Peet 76985ae781
build: fix alpine cli build (#190266) 2023-08-11 17:27:41 +01:00
Connor Peet 52840e3ca5
cli: cleanup build (#190213)
- Remove the `prepare` script entirely
- Variables are now populated from the product.json during build. Most
  variables are mapped automatically, with some special handling in a
	few cases. `build.rs` is now much more self-contained.
- Look for the `product.overrides.json` for vscode developers instead of
  looking for a peer `vscode-distro` folder

Fixes #178691
2023-08-10 20:14:30 -07:00
Connor Peet 0d22bb7efa
cli: update dependencies for s360 (#189562)
* cli: update dependencies for s360

* update rust
2023-08-03 18:05:46 +01:00
Connor Peet ef8b1483fc
build: use new cli patch method (#187629) 2023-07-11 13:47:08 -07:00
Connor Peet 49535d6a04
build: fix missing param for build (#184660) 2023-06-09 01:10:08 +02:00
Connor Peet e686621e2e
cli: avoid running prepare a second time in ci (#184558) 2023-06-08 02:22:44 +02:00
Connor Peet 9de813729c
build: install clippy when building cli in ci (#184554) 2023-06-07 16:40:30 -07:00
Connor Peet 43742d891d
Run a lint build of the CLI in CI (#184545)
* cli: adopt sccache for speedier cli compilations

* only cache common linux x64 build

* instead, only dev compile/clippy lint in ci
2023-06-07 15:48:55 -07:00
Connor Peet eb44b5ef6c
build: don't apply cli 'patches' for merge check (#184210)
* build: don't apply cli 'patches' for merge check

This also needed modules installed. But with the new toml patches, the 'merge' will never fail outright, so there's no need to do a separate merge check for it imo

* reduce duplication in pipelines, cache node_modules
2023-06-02 22:29:48 +02:00
Connor Peet d3d9f86116
cli: store cli in user data dir, separate per quality (#182102)
* cli: store cli in user data dir, separate per quality

Fixes #181017

On first run, the `~/.vscode-cli` will be migrated inside the user data dir of the currently running quality.

* use create_dir_all instead

* clippy fixes
2023-05-10 13:09:23 -07:00
Martin Aeschlimann dad6ca32fc
adopt tunnel mutex name change (#180524) 2023-04-21 17:49:10 +02:00
Connor Peet ca9404bd2f
cli: read tunnel lock from product.json (#179800)
Fixes #179265
2023-04-12 18:52:37 +01:00
Connor Peet b547b58db6
cli: use win32 app mutex to detect running tunnels and tunnel sevices (#179622)
* cli: fix distro mixin

* cli: use win32 app mutex to detect running tunnels and tunnel sevices

Fixes #179265

* cli: fix distro mixin more

* fix

* fix build
2023-04-10 20:25:14 +01:00
João Moreno aac80c3f0a
Adopt new distro format (#178689)
* Simplify distro

Also a ton of drive-by fixing around builds:
- simplified many oneliners
- fixed missing custom npm registry call setups
- remove unnecessary and duplicate work during builds
- many many fixes
2023-04-02 09:35:39 +02:00
João Moreno 6fe3014566
Workaround code signing issues (#178071)
* use dot net 6 for codesigning

* make esrpclienttool use continueOnError

* another one

* fix path

* argh
2023-03-23 10:52:34 +01:00
Connor Peet a0562ccdb2
build: fix win32 signed cli archive (#171584) 2023-01-18 09:30:03 +01:00
Connor Peet d5ab02349e rename cli binary to reflect quality 2023-01-17 08:19:36 -08:00
Connor Peet fb53973c5f
cli: pull documentation url from product.json (#166993)
Fixes https://github.com/microsoft/vscode-cli/issues/560
2022-11-22 11:21:41 -08:00
Connor Peet 94ee5f5861
cli: automatically use distro qualities if available (#166961)
A fully-functioning CLI with tunnel capabilities requires product-specific
configuration that is not included in the OSS. This change has the CLI's build
script automatically look for a peer `vscode-distro` folder and, in a debug
build, set its build variables based on that.

It also works to set correct variables if vscode-distro is not found, based on
the OSS product.json (though this is not sufficient to run a fully fledged
tunnel.)
2022-11-22 06:13:16 -08:00
Martin Aeschlimann 0131be02f4
add editorWebUrl to tunnelApplicationConfig (#166872)
* add editorWebUrl to tunnelApplicationConfig

* bump distro & compile 'build'
2022-11-21 09:37:26 -08:00
Connor Peet 796ee2bf3c
chore: pull more strings from the product.json (#166769)
Fixes the bulk of https://github.com/microsoft/vscode-cli/issues/560
2022-11-18 18:52:52 -08:00
Johannes c281755a1b
more missing JS files 2022-11-15 09:45:01 +01:00
Johannes 5912ad3ff1
Merge branch 'main' into joh/rewrite-privates 2022-11-15 09:44:34 +01:00
Connor Peet c47751948c
cli: add service integration for systemd (#166328)
systemd, like most 'modern' linux components, has a nice dbus API. This uses
that API to register the tunnel as a service of the calling user.

The dbus dependency is temporarily duplicated, until secret-service 3 is
released, where they update to the latest version (should be a week or two).

For https://github.com/microsoft/vscode-cli/issues/367. Next up, macOS,
then it's done :)
2022-11-14 21:39:05 -08:00
Johannes 58e979f39e
Merge branch 'main' into joh/rewrite-privates 2022-11-14 11:56:16 +01:00
João Moreno 59814267dd
Use new Key Vault account (#166049)
use separate keyvault
2022-11-11 09:38:36 +01:00
Johannes 696c1cf199
build utils with source map to enable JS debug console 2022-11-10 15:05:47 +01:00
Connor Peet 63fbcea804
cli: pin rust (and clippy) version for builds 2022-11-07 17:56:35 -08:00
Connor Peet fff294400b
Merge remote-tracking branch 'origin/main' into connor4312/use-packaged-openssl 2022-10-21 10:55:13 -07:00
Connor Peet ddd4431d14
build: fix git auth with cli 2022-10-20 18:25:19 -07:00
Connor Peet 883bac79c4
build: fix
Local debug stuff got onto main
2022-10-20 17:59:16 -07:00
Connor Peet bf36a10c47
cli: use packaged openssl instead of artisanal builds 2022-10-20 17:14:14 -07:00
Connor Peet 8ba5882fb8
Merge pull request #163971 from microsoft/connor4312/cli-vcpkg
cli: use vcpkg for everything
2022-10-20 16:45:18 -07:00
Connor Peet c536595a7f
cli: fallback to system installs in the standalone CLI
The standalone CLI should detect and fall back to using and
system-installed VS Code instance, rather than trying to download zips
and manage its own VS Code instances.

There are three approaches used for discovery:

- On Windows, we can easily and quickly read the register to find
  installed versions based on their app ID.
- On macOS, we initially look in `/Applications` and fall back to the
  slow `system_profiler` command to list app .app's if that fails.
- On Linux, we just look in the PATH. I believe all Linux installers
  (snap, dep, rpm) automatically add VS Code to the user's PATH.

Failing this, the user can also manually specify their installation dir,
using the command `code version use stable --install-dir /path/to/vscode`.

Fixes #164159
2022-10-20 10:54:13 -07:00
Connor Peet ed0a21eda6
Merge remote-tracking branch 'origin/main' into connor4312/msrustup 2022-10-18 14:25:51 -07:00
Connor Peet 24a51e506f
try using vcpkg for everything 2022-10-18 10:58:50 -07:00
Connor Peet 7c3740a7e7
update prepare scripts, license, lockfile 2022-10-17 11:50:49 -07:00
Connor Peet cb1b7ec10b
temporarily disable secret-service pending update 2022-10-17 11:13:51 -07:00