Commit graph

464 commits

Author SHA1 Message Date
Aditya Patwardhan 9f429f0206 Build test packages for windows, linux-x64, linux-arm, linux-arm64 and macOS (#9476) 2019-04-26 15:41:07 -07:00
Steve Lee 3e1f630695 Add Preview assets for msix (#9375) 2019-04-22 10:41:34 -07:00
dependabot[bot] ecbde6c020 Build(deps): Bump Newtonsoft.Json (#9431)
Bumps [Newtonsoft.Json](https://github.com/JamesNK/Newtonsoft.Json) from 12.0.1 to 12.0.2.
- [Release notes](https://github.com/JamesNK/Newtonsoft.Json/releases)
- [Commits](https://github.com/JamesNK/Newtonsoft.Json/compare/12.0.1...12.0.2)

Signed-off-by: dependabot[bot] <support@dependabot.com>
2019-04-22 13:37:09 +05:00
Aditya Patwardhan f286c8ce63
Remove elements which do not work on earlier version on Windows PowerShell (#9411) 2019-04-18 16:56:53 -07:00
Aditya Patwardhan 99c3fd1757
Convert custom attribute ValidatePathNotInSettings to function (#9406) 2019-04-18 12:49:42 -07:00
Aditya Patwardhan 3ffd998c58 Create codecoverage and test packages for non-windows (#9373)
Refactor the `ci.psm1` to publish the code coverage and test packages.
Allow `CodeCoverage` configuration on non-windows.

## PR Context

We plan to run code coverage on Windows, Linux and macOS. These changes are needed to unblock those runs.
2019-04-16 15:13:30 -07:00
Steve Lee 73114ee36c Enable building of msix package (#9289)
Add support in packaging.psm1 to produce a .msix AppX package.  Update the docker image to use the new msix package type.  Update the associated yml files so AzDevOps performs the build.

## PR Context

Enable publishing PSCore6 to Microsoft Store
2019-04-15 17:07:15 -07:00
Aditya Patwardhan 02974a986d Create test package for macOS on release builds (#9344) 2019-04-13 19:01:28 -07:00
Aditya Patwardhan be505772e2 Add AcessToken variable to jobs that perform signing (#9351) 2019-04-13 18:59:51 -07:00
Travis Plunk e2bfced875
Update repo for Ubuntu 14.04 EOL (#9324)
Update repo for Ubuntu 14.04 EOL
  - also remove a missed instance of Fedora 27
2019-04-09 17:54:13 -07:00
Travis Plunk b990c76992
Add CI for install-powershell.sh and amazon linux (#9314) 2019-04-08 14:45:15 -07:00
Christoph Bergmeister [MVP] f5fc0535ac Preserve user shortcuts pinned to Taskbar during MSI upgrade (#9305)
Fixes #8919 

Preserve user shortcuts pinned to Taskbar during MSI upgrade by not removing shortcuts in this case (assuming the user has not changed the installation directory), see https://stackoverflow.com/a/33402698/1810304
This also requires the Guid to not always be re-generated, which PR #7701 originally added to ensure shortcuts get removed when RTM and preview are installed, the underlying problem was rather that RTM and preview shared the same GUIDs, therefore the GUIDs are hard-coded again but different for RTM and preview, therefore the shortcuts will still always get removed on uninstall. But this also means those GUIDs should change when the default installation directory changes, i.e. in PowerShell 7. Should we write the code to already take this into account that it does not get forgotten?

Tested by first reproducing the issue by building installers locally (and bumping the patch version. Then the fix was applied to verify the solution, it. For this to take effect the version from which an MSI is being upgraded must have this fix already, i.e. if this fix got shipped in `6.2.1`, then on upgrading to it, the issue would still occur but when upgrading `6.2.1` to `6.2.2` the shortcut would start being preserved. I am wondering if we could maybe improve this to show effect earlier by trying to extract the used (auto-generated) GUIDs in the `6.2.0` and `6.2.0-rc` packages out and use them...
Please not that we probably need to take this out for `7.0` because the base installation directory will change. This also assumes that the user has not specified a different installation directory on upgrade but this is a bit of an edge case where I think other things might break as well.
2019-04-07 12:25:56 -07:00
Steve Lee b63696572f Fix skipping of tests in RemoteSession.Basic.Tests.ps1 (#9304)
Moved check if able to write to $PSHome as way to skip test to `BeforeAll` which already contained a check if running on Windows.

## PR Context

As part https://github.com/PowerShell/PowerShell/pull/9279, tests were updated to be skipped if the test requires writing to `$PSHome` but is not able to.  However, these tests already had a skip mechanism in place so the additional check caused the test to run when it should have skipped.

Co-authored-by: Travis Plunk <github@ez13.net>
2019-04-05 17:00:41 -07:00
Travis Plunk e10603c4f0
Make sure non-Windows CI fails when a test fails (#9303)
Make sure non-Windows CI fails when a test fails

## PR Context

We discovered that some tests were failing after a PR and the CI was not failing
2019-04-05 15:49:30 -07:00
Aditya Patwardhan 074b344133
Remove duplicate Policheck task and pin to specific version (#9297) 2019-04-04 16:14:57 -07:00
Aditya Patwardhan 4bd41e836c
Publish windows daily build to MyGet (#9288) 2019-04-03 13:22:51 -07:00
Aditya Patwardhan 10fa1fc1dd
Move artifacts to artifact staging directory before uploading (#9273) 2019-04-02 11:56:48 -07:00
Travis Plunk b7c7aa176e
Make install-powershell.ps1 work on Windows Server 2012 R2 (#9271) 2019-04-02 10:39:09 -07:00
Aditya Patwardhan 34fa5e472d
Fix publishing daily nupkg to MyGet (#9269) 2019-04-01 16:58:43 -07:00
Travis Plunk 17f5a5ccbe
Add component detection to all jobs (#8964)
Add component detection to all jobs.
2019-03-29 15:18:55 -07:00
Aditya Patwardhan df513bf7d8 Update docs for v6.2.0 (#9229) 2019-03-28 12:02:14 -07:00
Reece Dunham 12276147e6 Remove code from CI.psm1 to optionally run Feature tests (#9212) 2019-03-27 13:29:15 -07:00
Aditya Patwardhan 8763c0b1d1 Performance improvements for release build (#9179)
This PR optimizes the download tasks to reduce build times. After the change we see a order of magnitude reduction in download times for Windows package signing and also the compliance tasks.

In addition to that the PR also makes changes to organize the build artifacts in folders.
2019-03-21 10:24:49 -07:00
Aditya Patwardhan 337ce63734
Use IL assemblies for NuGet packages to reduce size (#9171) 2019-03-21 10:03:46 -07:00
Aditya Patwardhan 95a8091991 Add tsaVersion property as TsaV1 for compliance build phase (#9176)
Add the tsaVersion property with values as TsaV1 as it defaults to v2 instead. We explicitly need v1.
2019-03-20 14:01:39 -07:00
Aditya Patwardhan 753d31809b
Publish global tool packages to pwshtool blob and bug fixes (#9163) 2019-03-20 13:44:40 -07:00
Reece Dunham eac31019ab Disable Homebrew analytics in macOS VSTS builds (#9130) 2019-03-16 11:57:16 -07:00
Reece Dunham 1e49d09d29 Remove appveyor references from packaging tools (#9117)
Removes appveyor stuff


## PR Context

<!-- Provide a little reasoning as to why this Pull Request helps and why you have opened it. -->
#8686 , appveyor removed
2019-03-12 12:13:55 -07:00
Bram Crielaard b115dff0eb Remove AppImage from tools (#9100) 2019-03-11 16:19:05 -07:00
Reece Dunham d63ac8934d Fixed Dockerfile syntax highlighting (#8991)
The `f` in Dockerfile is not uppercase, this breaks syntax highlighting for vscode on my client
<!-- Summarize your PR between here and the checklist. -->

## PR Context
`DockerFile` breaks syntax highlighting as mentioned and described above.
<!-- Provide a little reasoning as to why this Pull Request helps and why you have opened it. -->
2019-03-11 15:16:12 -07:00
Aditya Patwardhan ab1d47712b Fix dependencies of nuget build to wait on DEB uploads to finish (#9118)
The NuGet build task should wait on uploads for DEB job to complete.

## PR Context

There is a race condition when the build for DEB is completed but the upload has not. If the NuGet build job starts it may not get all the packages needed for building nuget packages.
2019-03-11 15:02:29 -07:00
Travis Plunk 058a19028d
Refactor macOS CI so that tests run in parallel (#9056)
Refactor macOS CI so that tests run in parallel 
  - Also:
    - Fix bootstrap issue where curl was failing for a month (so obviously not needed)
    - Change Windows test stages to use PowerShell Core (where we can) to avoid compat issues

## PR Context

This allows running all tests in about the same about of clock time.
2019-03-11 13:00:22 -07:00
Travis Plunk 382e5cc871
Fix artifact Download issue in release build (#9095)
Fix artifact Download issue in release build
2019-03-08 15:18:38 -08:00
Bram Crielaard 7031954669 Make install scripts more consistent over different operating systems (#9071)
I noticed a couple of inconsistencies when reading through the install bash scripts. 

- Make documentation for switches consistent over all files.
- Replace all `sed` implementations of `lowercase` with a more maintainable `tr` implementation.
- Set the `OS` variable in every install script, making it so previously unused checks are actually used.
- Exit with a non-zero exit code when the script reaches an illegal state.


## PR Context

A lot of people, including myself, read the install scripts before executing them. While doing so I noticed they contained inconsistencies. For example, certain flags you can pass to the install script were either undocumented or had an incorrect description. This PR fixes some of these inconsistencies, which should make them easier to maintain and easier to read.

Co-authored-by: Travis Plunk <github@ez13.net>
2019-03-08 13:00:04 -08:00
Reece Dunham ae8c841d07 Comment cleanup in releaseTools.psm1 (#9064) 2019-03-07 18:10:41 -08:00
Aditya Patwardhan 7caf59be3e
Publish test package on release builds (#9063) 2019-03-06 10:00:35 -08:00
Aditya Patwardhan 861b6c8a5f
Update docs for 6.2.0-rc.1 release (#9022) 2019-03-05 11:26:17 -08:00
Aditya Patwardhan c22669a236
Update UML to represent SDK and Global tool builds (#8997) 2019-03-01 13:07:25 -08:00
Aditya Patwardhan cbd255e461 Code coverage artifacts (#8993)
Move the `TestPackage.zip` under code coverage and remove `tests.zip` as it is not needed anymore.
2019-02-28 14:38:45 -08:00
Travis Plunk d7dd4b5dd2
Fix MSI Upgrade failure for preview builds (#9013) 2019-02-28 14:05:27 -08:00
Aditya Patwardhan fb05169a51
Build Global tool for PowerShell and SDK container (#8984)
* Add shim dll to redirect to appropriate runtime
* Build updates for creating global tool package
* Add building global tool to nuget.yml
* Add azure upload of nuget packages
2019-02-26 12:56:29 -08:00
Travis Plunk dc8aed97dc
Make test file result names unique (#8979)
Make test file result names unique
  - Also, remove dead code that I found during investigation

Fixes #8978

## PR Context

Making the filenames unique, ensures that we can download the results from the artifacts and do our own processing of the results.
2019-02-25 15:18:26 -08:00
Travis Plunk 54ee33d759
Add variable to control the version of the signing task we use (#8982) 2019-02-25 15:06:01 -08:00
Aditya Patwardhan 76e8091513
Publish test and code coverage artifacts for daily builds (#8955) 2019-02-25 13:03:06 -08:00
Aditya Patwardhan 81d37fcb84
Integrate building NuGet package in the coordinated build (#8947) 2019-02-25 09:57:20 -08:00
Dongbo Wang 5d54f1aa38
Make xUnit tests run sequentially to avoid race conditions caused by manipulating 'powershell.config.json' in tests (#8945) 2019-02-22 11:57:10 -08:00
Reece Dunham c14d5dd67f Remove some of the last AppVeyor references (#8867)
This removes some of the last mentions of the AppVeyor name.  Don't change the title, we don't want the word to appear in the CLs
Also problem: the last references are in the changelogs but I don't want to modify them without committee approval.  

## PR Context  

it was removed, #8686
2019-02-19 12:44:00 -08:00
Travis Plunk 93f33bb0d3
Update stable version to 6.1.3 (#8902) 2019-02-19 11:07:46 -08:00
Travis Plunk af4e8117df
Support release branches based on the forward slash separator (#8903) 2019-02-19 10:47:39 -08:00
Travis Plunk a7f798575d
Parallelize the windows CI to enable us to run all tests all the time (#8868)
Split Windows CI into the following Jobs

1. Combine Build and xUnit, which published build artifact
1. Elevated CI tests
1. Unelevated CI test
1. Elevated everything else tests
1. Unelevated everything else tests
1. Package build and test
1. Verify xUnit result

## PR Context  

Before this test:

- A CI run would take ~14 minutes
- A Feature run would take ~30 minutes

After this change, it always runs all tests and takes ~20 minutes.
Job `Unelevated everything else tests` is the long poll, taking ~4 minutes longer than the next shortest job.  We should be able to get this back down to ~15 if we split that test job somehow.
2019-02-14 16:33:19 -08:00