-Full Log Output
-
-
-
-~~~sh
-PLACE LOG CONTENT HERE - WE NEED _ALL_ DETAILED OUTPUT BASED ON THE ABOVE TO BE ABLE TO PROVIDE SUPPORT (YOU WILL FIND THAT IN THE $env:ChocolateyInstall\logs\chocolatey.log between the `=====`)
-~~~
-
-
-
-
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
deleted file mode 100644
index 0875438635..0000000000
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ /dev/null
@@ -1,15 +0,0 @@
-
diff --git a/.github/SECURITY.md b/.github/SECURITY.md
deleted file mode 100644
index 43998ec9bb..0000000000
--- a/.github/SECURITY.md
+++ /dev/null
@@ -1,6 +0,0 @@
-# Security Policies and Procedures
-
-Security reports should never start out in the open. Please follow up directly
-with the team if you have a contact. If not you can always start with the
-information at https://docs.chocolatey.org/en-us/information/security to see
-instructions on how to provide the disclosure. Thank you!
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index aeea32f4e1..14fbb73b6d 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -1,15 +1,9 @@
name: Chocolatey Builds
on:
- # Trigger on pushes to master and stable, or with pull requests
+ # Trigger on pushes and on pull requests
push:
- branches:
- - master
- - stable
pull_request:
- branches:
- - master
- - stable
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
@@ -20,44 +14,129 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
+ with:
+ fetch-depth: 0
+ - name: Cache Tools
+ uses: actions/cache@v2.1.6
+ with:
+ path: tools
+ key: ${{ runner.os }}-tools-${{ hashFiles('recipe.cake') }}
- name: Build with Mono
run: |
chmod +x build.sh
- $GITHUB_WORKSPACE//build.sh -v
+ $GITHUB_WORKSPACE//build.sh --verbosity=diagnostic --target=CI
+ - name: Upload Ubuntu build results
+ uses: actions/upload-artifact@v2
+ # Always upload build results
+ if: ${{ always() }}
+ with:
+ name: ubuntu-build-results
+ path: |
+ code_drop/TestResults/issues-report.html
+ code_drop/TestResults/NUnit/TestResult.xml
+ code_drop/Packages/NuGet/*.nupkg
+ code_drop/MsBuild.log
# Build on Windows
windows-build:
- runs-on: windows-latest
+ runs-on: windows-2019
steps:
- uses: actions/checkout@v2
+ with:
+ fetch-depth: 0
+ - name: Cache Tools
+ uses: actions/cache@v2.1.6
+ with:
+ path: tools
+ key: ${{ runner.os }}-tools-${{ hashFiles('recipe.cake') }}
- name: Build with .Net Framework
- run: .\build.bat -v
+ run: ./build.ps1 --verbosity=diagnostic --target=CI
+ - name: Upload Windows build results
+ uses: actions/upload-artifact@v2
+ # Always upload build results
+ if: ${{ always() }}
+ with:
+ name: windows-build-results
+ path: |
+ code_drop\TestResults\issues-report.html
+ code_drop\TestResults\NUnit\TestResult.xml
+ code_drop\TestCoverage\lcov.info
+ code_drop\TestCoverage\OpenCover.xml
+ code_drop\ilmerge-chocoexe.log
+ code_drop\ilmerge-chocolateydll.log
+ code_drop\Packages\NuGet\*.nupkg
+ code_drop\Packages\Chocolatey\*.nupkg
+ code_drop\MsBuild.log
+ - uses: coverallsapp/github-action@master
+ with:
+ github-token: ${{ secrets.GITHUB_TOKEN }}
+ path-to-lcov: |
+ code_drop\TestCoverage\lcov.info
+ flag-name: run-${{ matrix.os }}
+ parallel: true
# Build using mono on MacOS
macos-build:
runs-on: macos-latest
steps:
- - uses: actions/checkout@v2
- - name: Build with Mono
- run: |
- chmod +x build.sh
- $GITHUB_WORKSPACE//build.sh -v
+ - uses: actions/checkout@v2
+ with:
+ fetch-depth: 0
+ - name: Cache Tools
+ uses: actions/cache@v2.1.6
+ with:
+ path: tools
+ key: ${{ runner.os }}-tools-${{ hashFiles('recipe.cake') }}
+ - name: Build with Mono
+ run: |
+ chmod +x build.sh
+ $GITHUB_WORKSPACE//build.sh --verbosity=diagnostic --target=CI
+ - name: Upload MacOS build results
+ uses: actions/upload-artifact@v2
+ # Always upload build results
+ if: ${{ always() }}
+ with:
+ name: macos-build-results
+ path: |
+ code_drop/TestResults/issues-report.html
+ code_drop/TestResults/NUnit/TestResult.xml
+ code_drop/Packages/NuGet/*.nupkg
+ code_drop/MsBuild.log
# Build using Mono in Docker on Ubuntu
docker-build:
runs-on: ubuntu-latest
steps:
- -
- name: Checkout
+ - name: Checkout
uses: actions/checkout@v2
- -
- name: Set up QEMU
+ with:
+ fetch-depth: 0
+ - name: Cache Tools
+ uses: actions/cache@v2.1.6
+ with:
+ path: tools
+ key: ${{ runner.os }}-tools-${{ hashFiles('recipe.cake') }}
+ - name: Set up QEMU
uses: docker/setup-qemu-action@v1
- -
- name: Set up Docker Buildx
+ - name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- -
- name: Build and push
+ - name: Build and push
uses: docker/build-push-action@v2
with:
context: .
file: docker/Dockerfile.linux
push: false
- tags: chocolatey/choco:latest
\ No newline at end of file
+ tags: chocolatey/choco:latest
+ build-args: |
+ "github_actions=true"
+ "github_ref=${{ github.ref }}"
+ "github_repository=${{ github.repository }}"
+ "github_base_ref=${{ github.base_ref }}"
+ "github_head_ref=${{ github.head_ref }}"
+ "github_run_number=${{ github.run_number }}"
+ upload-code-coverage-results:
+ needs: [ubuntu-build, windows-build, macos-build]
+ runs-on: ubuntu-latest
+ steps:
+ - name: Coveralls Finished
+ uses: coverallsapp/github-action@master
+ with:
+ github-token: ${{ secrets.GITHUB_TOKEN }}
+ parallel-finished: true
\ No newline at end of file
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
new file mode 100644
index 0000000000..fe5ce3850f
--- /dev/null
+++ b/.github/workflows/test.yml
@@ -0,0 +1,89 @@
+name: Chocolatey Integration Tests
+
+on:
+ schedule:
+ # Run at 10:47pm, at a random minute to reduce load on GH Actions
+ - cron: '47 22 * * *'
+
+ # Allows you to run this workflow manually from the Actions tab
+ workflow_dispatch:
+
+jobs:
+ # Build and test using mono on Ubuntu
+ ubuntu-build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ fetch-depth: 0
+ - name: Cache Tools
+ uses: actions/cache@v2.1.6
+ with:
+ path: tools
+ key: ${{ runner.os }}-tools-${{ hashFiles('recipe.cake') }}
+ - name: Test with NUnit on Mono
+ run: |
+ chmod +x build.sh
+ $GITHUB_WORKSPACE//build.sh --verbosity=diagnostic --target=test --testExecutionType=all
+ - name: Upload Ubuntu build results
+ uses: actions/upload-artifact@v2
+ # Always upload build results
+ if: ${{ always() }}
+ with:
+ name: ubuntu-build-results
+ path: |
+ code_drop/TestResults/issues-report.html
+ code_drop/TestResults/NUnit/TestResult.xml
+ code_drop/MsBuild.log
+ # Build and test on Windows
+ windows-build:
+ runs-on: windows-2019
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ fetch-depth: 0
+ - name: Cache Tools
+ uses: actions/cache@v2.1.6
+ with:
+ path: tools
+ key: ${{ runner.os }}-tools-${{ hashFiles('recipe.cake') }}
+ - name: Test with NUnit on .Net Framework
+ run: .\build.bat --verbosity=diagnostic --target=test --testExecutionType=all --shouldRunOpenCover=false
+ - name: Upload Windows build results
+ uses: actions/upload-artifact@v2
+ # Always upload build results
+ if: ${{ always() }}
+ with:
+ name: windows-build-results
+ path: |
+ code_drop\TestResults\issues-report.html
+ code_drop\TestResults\NUnit\TestResult.xml
+ code_drop\TestCoverage\lcov.info
+ code_drop\TestCoverage\OpenCover.xml
+ code_drop\MsBuild.log
+ # Build and test using mono on MacOS
+ macos-build:
+ runs-on: macos-latest
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ fetch-depth: 0
+ - name: Cache Tools
+ uses: actions/cache@v2.1.6
+ with:
+ path: tools
+ key: ${{ runner.os }}-tools-${{ hashFiles('recipe.cake') }}
+ - name: Test with NUnit on Mono
+ run: |
+ chmod +x build.sh
+ $GITHUB_WORKSPACE//build.sh --verbosity=diagnostic --target=test --testExecutionType=all
+ - name: Upload MacOS build results
+ uses: actions/upload-artifact@v2
+ # Always upload build results
+ if: ${{ always() }}
+ with:
+ name: macos-build-results
+ path: |
+ code_drop/TestResults/issues-report.html
+ code_drop/TestResults/NUnit/TestResult.xml
+ code_drop/MsBuild.log
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
index 32976f4a68..4aeebf21f0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -37,4 +37,18 @@ src/_dotCover.chocolatey/
src/_dotTrace.chocolatey/
src/chocolatey.sln.GhostDoc.xml
-docs/generated
\ No newline at end of file
+chocolatey.official.snk
+
+docs/generated
+
+# Testing related
+.vagrant
+buildOutput.txt
+
+# Build related
+tools/**
+!tools/packages.config
+!tools/Addins/packages.config
+!tools/Modules/packages.config
+BuildArtifacts/
+code_drop/
\ No newline at end of file
diff --git a/.nuget/NuGet.Config b/.nuget/NuGet.Config
deleted file mode 100644
index 6a318ad9b7..0000000000
--- a/.nuget/NuGet.Config
+++ /dev/null
@@ -1,6 +0,0 @@
-
-