Commit graph

97 commits

Author SHA1 Message Date
Travis Plunk 23451ac32f
Create dependabot config.yml (#9368)
Create dependabot config.yml
2019-04-15 11:49:17 -07:00
Reece Dunham 2d87948d8e Move from npm to Yarn for markdown tests (#9312)
Yarn is better because...
* it validates package checksums
* it has emojis 🤟
* it is faster and employs better caching
2019-04-10 14:16:22 -07:00
Travis Plunk b990c76992
Add CI for install-powershell.sh and amazon linux (#9314) 2019-04-08 14:45:15 -07:00
Aditya Patwardhan 28ec8ac831 Fix build order in windows-daily build (#9275)
The windows-daily build had a bug which caused the packaging builds to be kicked off before tests. This PR fixes the build order.

## PR Context

Fix for failing daily build.
2019-04-02 14:25:36 -07:00
Aditya Patwardhan 4b5fe2e72b
Fix variable name in windows-daily.yml (#9274) 2019-04-02 12:45:01 -07:00
Aditya Patwardhan 34fa5e472d
Fix publishing daily nupkg to MyGet (#9269) 2019-04-01 16:58:43 -07:00
Travis Plunk 14980aa943
Add secret scanning to CI (#9249)
Add secret scanning to CI

## PR Context

This should prevent us from having any secrets in our history
2019-03-30 10:17:25 -07:00
Reece Dunham 5a53ea0a32 Clean up static analysis config (#9113) 2019-03-25 16:17:36 -07:00
Travis Plunk 5aed18dc93
Make Linux CI parallel (#9209)
Make the Linux CI build once and then run the tests on 4 different machines, by tag.

## PR Context

Running in parallel allows us to run all tests in about the same amount of clock time
2019-03-23 18:23:07 -07:00
Michael Klement f81f778308 Update feature-request issue template to move instructions into comments. (#9187)
Moved instructions into comments.

## PR Context

While users should _see_ instructions, they shouldn't be _included_ when the issue is created.
2019-03-22 12:23:26 -07:00
Reece Dunham eac31019ab Disable Homebrew analytics in macOS VSTS builds (#9130) 2019-03-16 11:57:16 -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
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
Aditya Patwardhan 76e8091513
Publish test and code coverage artifacts for daily builds (#8955) 2019-02-25 13:03:06 -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
Travis Plunk 57aeca428e
Port Security bypass fixes from 6.1.3 (#8915) 2019-02-21 13:44:08 -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 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
Reece Dunham cb4b818d55 Refactor travis.ps1 into ci.psm1 (#8822)
Refactors `travis.ps1`. Important for maintainers: I removed the webhook and badge stuff as neither exist anymore. I also merged the build and test phase with the bootstrap phase.
2019-02-08 14:37:36 -08:00
Travis Plunk ec3bd62782
Remove unneeded Invoke-Expression on unvalidated input (#8826)
Remove unneeded `Invoke-Expression` on unvalidated input
2019-02-05 10:48:34 -08:00
Aditya Patwardhan ec12f373ec Fix daily CI builds to publish tar package as artifacts (#8775)
Update the packaging script to always create the tar.gz packages.

## PR Context  

Daily builds for Linux and MacOS do not publish tar.gz package.
2019-02-04 14:53:25 -08:00
Travis Plunk 003a141f31
Remove directory causing static analysis failure (#8812)
Remove directory causing static analysis failure
2019-02-01 18:03:12 -08:00
Travis Plunk 32561022ca
Move Final artifacts from universal build to finalResults folder (#8806)
## PR Summary

Move Final artifacts from universal build to `finalResults` folder
2019-02-01 10:59:01 -08:00
Travis Plunk e96b0bf85b
Refactor Unified Release Build (#8804)
Refactor Unified Release Build
  - Make injecting the nuget.config a template
  - Make setting the version variable a template
  - Add parameters to templates where needed
  - Run defender scan before uploading linux packages (and rename step to plain english)
2019-01-31 15:10:19 -08:00
Reece Dunham 04a31ff22f Refactor appveyor.psm1 to ci.psm1 (#8733) 2019-01-25 15:30:31 -08:00
Travis Plunk 4d69997cf0
Batch merge builds together while a merge build is running (#8668)
## PR Summary

Batch merge builds together while a merge build is running 

## PR Context  

Help keep agents available for CI runs.
2019-01-16 15:29:46 -08:00
Travis Plunk 7bf4641444
Fix broken urls (#8653)
Fix broken URL
  - Also, move other static analysis tests into that CI.
  - Also, make the link analysis a pester test (partly to make sure the step fails in case of an error)
2019-01-15 16:20:45 -08:00
Reece Dunham c188666305 Name the spelling yaml something more appropriate (#8601)
* Rename spelling.yml to misc-analysis.yml
* Update mac.yml
* Update windows.yml
* Update README.md
2019-01-07 12:54:13 -08:00
Reece Dunham bb2440cdac Create link check task (#8471) 2019-01-03 14:47:59 -08:00
Travis Plunk 878a46df20
get macOS to publish daily build to nugetfeed (#8464) 2019-01-02 11:55:14 -08:00
Travis Plunk 20d9bd5f0a
pass nugetkey as param (#8461) 2018-12-13 17:23:41 -08:00
Aditya Patwardhan ddd69c845a
Update the timeout of CI builds (#8398) 2018-12-04 16:57:29 -08:00
Travis Plunk 40857a25c3
Merge changelogs from 6.1.1 and 6.0.5 into master (#8283)
* Add 6.1.1 change log
* Add 6.0.5 change log
* Change filters for spelling CI
2018-11-15 15:17:48 -08:00
Darwin a244c049e8 Make install-powershell.sh autodetect if it should use wget or curl (#8225)
install-powershell.sh now autodetects whether curl or wget is installed to download secondary script when it is not found locally.
2018-11-14 10:45:52 -08:00
Travis Plunk 9894be9c60
Add path filters to CI YAML (#8222)
* Filter spelling to only PRs with `*.md` files
* filter common paths in CI yml
2018-11-09 11:38:44 -08:00
Travis Plunk e702119177
Add code to use private NuGet feeds when running in internal CI system (#8187)
Add code to use private NuGet feeds when running in internal CI system
2018-11-06 09:52:14 -08:00
Aditya Patwardhan d7c7fa504f
Filter the TestPackage artifact upload by name to avoid other zip files being uploaded (#8116) 2018-10-29 14:13:05 -07:00
Aditya Patwardhan 487073e57b
Add functionality to create a test package (#8087) 2018-10-19 14:56:58 -07:00
Travis Plunk ea83aea39e
Wait for package manager not to be locked (#7817) 2018-09-18 16:47:52 -07:00
Travis Plunk 812f16bfac Disable travis-ci (#7766) 2018-09-12 17:54:21 -07:00
Travis Plunk 2141c2a8e3
Add daily build non-windows platforms (#7683)
Add daily build non-windows platforms
  - Also, make the [Feature] tag work in VSTS for non-windows
  - Also, add a way to force feature tests to run
  - Also, fix an issue where `-workingdirectory` didn't work when running async
2018-09-06 12:27:49 -07:00
Travis Plunk 26d2741377
Remove workaround on VSTS that is no longer needed (#7666) 2018-08-30 17:45:15 -07:00
Travis Plunk 5a50d64abb
make artifact upload only occur for non-PR builds (#7657) 2018-08-29 17:03:41 -07:00
Travis Plunk 40532d9a2e
Add VSTS CI for Windows (#7536)
- Add VSTS CI for Windows
    - Disable `Access-denied test for Get-Item C:\windows\appcompat\Programs\Install -ErrorAction Stop`, because the path does not always exist
        - https://github.com/PowerShell/PowerShell/issues/7553
    - Disable `Should give .sys file if the fullpath is specified with hidden and force parameter`, because pagefile.sys doesn't always exist and other files don't meet test's requirement.
        - https://github.com/PowerShell/PowerShell/issues/7554
    - Disable some `Test-Connection` tests for same reasons they failed on VSTS Linux
        - https://github.com/PowerShell/PowerShell/issues/7555
    - Disable `Test-FileCatalog should pass when catalog is in the same folder as files being tested`, because the CmdLet does not work in that scenario
         - Also, give details needed to investigate when the test fails
         - https://github.com/PowerShell/PowerShell/issues/7556
    - Update `appveyor.psm1` to work with VSTS
    - Update `HelpersRemoting.psm1` `New-RemoteSession` to work for CimSession (discovered an issue during the investigation)
    - Update `Test wildcard with drive relative directory path` to work when there are multiple drives
         - Disable on non-windows machines since the test is assuming drive letters
    - Update `New-CimSession` Tests to requireAdmin
         - Also, make sure session name is a string
    - Add functions to save and restore psoptions
    - update `.gitatttributes` so files clone like they do on appveyor
2018-08-17 22:06:51 -07:00
Travis Plunk 965552873c
Add Linux VSTS CI (#7527)
Update Start-PSPester and Start-PSxUnit to upload test results when running in VSTS
Disable tests which require non-root using when running as root
remove verifications in Test-Connection tests which verify buggy behavior
Skip tests which don't behave correctly in VSTS (due to running in a container?)
- Test-Connection - #7528
- Set-Date - #7529
2018-08-14 16:23:50 -07:00
Travis Plunk b06b0ca6e5
Allow publishing artifacts or test results to fail but to fail the run (#7515) 2018-08-13 15:44:33 -07:00
Travis Plunk b3d0913d74
Add CI definition for VSTS for macOS (#7490)
Add CI definition for VSTS for macOS
  - Add VSTS YAML for mac
  - Add a function to upload log files during a test on VSTS
2018-08-10 15:13:31 -07:00