mirror of
https://github.com/PepperDash/EssentialsPluginTemplate.git
synced 2026-01-11 19:44:38 +00:00
style: renamed classes for consistency
build: updated essentials version ci: updated workflows docs: documentation updated ci: updated nuspec
This commit is contained in:
@@ -153,7 +153,7 @@ jobs:
|
|||||||
$exclusions = "packages"
|
$exclusions = "packages"
|
||||||
# Trying to get any .json schema files (not currently working)
|
# Trying to get any .json schema files (not currently working)
|
||||||
# Gets any files with the listed extensions.
|
# Gets any files with the listed extensions.
|
||||||
Get-ChildItem -recurse -Path "$($Env:GITHUB_WORKSPACE)" -include "*.clz", "*.cpz", "*.cplz", "*.nuspec" | ForEach-Object {
|
Get-ChildItem -recurse -Path "$($Env:GITHUB_WORKSPACE)" -include "*.clz", "*.cpz", "*.cplz", "*.nuspec", "*.md" | ForEach-Object {
|
||||||
$allowed = $true;
|
$allowed = $true;
|
||||||
# Exclude any files in submodules
|
# Exclude any files in submodules
|
||||||
foreach ($exclude in $exclusions) {
|
foreach ($exclude in $exclusions) {
|
||||||
@@ -222,8 +222,6 @@ jobs:
|
|||||||
Push_Nuget_Package:
|
Push_Nuget_Package:
|
||||||
needs: Build_Project
|
needs: Build_Project
|
||||||
runs-on: windows-2019
|
runs-on: windows-2019
|
||||||
env:
|
|
||||||
NUSPECNAME: default
|
|
||||||
steps:
|
steps:
|
||||||
- name: Download Build Version Info
|
- name: Download Build Version Info
|
||||||
uses: actions/download-artifact@v1
|
uses: actions/download-artifact@v1
|
||||||
@@ -256,26 +254,26 @@ jobs:
|
|||||||
shell: powershell
|
shell: powershell
|
||||||
run: |
|
run: |
|
||||||
$nuspec_file = (Get-ChildItem *.nuspec -recurse).BaseName
|
$nuspec_file = (Get-ChildItem *.nuspec -recurse).BaseName
|
||||||
echo "NUSPECNAME=$($nuspec_file)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
|
||||||
echo "NUSPEC_FILE=$($nuspec_file)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
echo "NUSPEC_FILE=$($nuspec_file)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
||||||
|
# Pulls the nuget builder packages
|
||||||
#Pushes to github nuget store
|
|
||||||
- name: Add nuget.exe
|
- name: Add nuget.exe
|
||||||
if: "!contains(env.NUSPECNAME, 'EssentialsPluginTemplate')"
|
if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')"
|
||||||
uses: nuget/setup-nuget@v1
|
uses: nuget/setup-nuget@v1
|
||||||
|
# Creating nuget Packages
|
||||||
- name: Add Github Packages source
|
- name: Add Github Packages source
|
||||||
if: "!contains(env.NUSPECNAME, 'EssentialsPluginTemplate')"
|
if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')"
|
||||||
run: nuget sources add -name github -source https://nuget.pkg.github.com/pepperdash/index.json -username Pepperdash -password ${{ secrets.GITHUB_TOKEN }}
|
run: nuget sources add -name github -source https://nuget.pkg.github.com/pepperdash/index.json -username Pepperdash -password ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
- name: Create nuget package
|
||||||
|
if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')"
|
||||||
|
run: nuget pack "./${{ env.NUSPEC_FILE}}.nuspec" -version ${{ env.VERSION }}
|
||||||
|
# Pushes to internal github registry
|
||||||
|
- name: Publish nuget package to Github registry
|
||||||
|
if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')"
|
||||||
|
run: nuget push **/*.nupkg -source github
|
||||||
# Pushes to nuget gallery
|
# Pushes to nuget gallery
|
||||||
- name: Add nuget.org API Key
|
- name: Add nuget.org API Key
|
||||||
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPECNAME, 'EssentialsPluginTemplate')
|
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')
|
||||||
run: nuget setApiKey ${{ secrets.NUGET_API_KEY }}
|
run: nuget setApiKey ${{ secrets.NUGET_API_KEY }}
|
||||||
- name: Create nuget package
|
|
||||||
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPECNAME, 'EssentialsPluginTemplate')
|
|
||||||
run: nuget pack "./${{ env.NUSPEC_FILE}}.nuspec" -version ${{ env.VERSION }}
|
|
||||||
- name: Publish nuget package to Github registry
|
|
||||||
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPECNAME, 'EssentialsPluginTemplate')
|
|
||||||
run: nuget push **/*.nupkg -source github
|
|
||||||
- name: Publish nuget package to nuget.org
|
- name: Publish nuget package to nuget.org
|
||||||
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPECNAME, 'EssentialsPluginTemplate')
|
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')
|
||||||
run: nuget push **/*.nupkg -Source https://api.nuget.org/v3/index.json
|
run: nuget push **/*.nupkg -Source https://api.nuget.org/v3/index.json
|
||||||
|
|||||||
@@ -167,74 +167,9 @@ jobs:
|
|||||||
asset_content_type: application/zip
|
asset_content_type: application/zip
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
needs: Build_Project
|
|
||||||
runs-on: windows-2019
|
|
||||||
env:
|
|
||||||
NUSPECNAME: default
|
|
||||||
steps:
|
|
||||||
- name: Get nuget File
|
|
||||||
shell: powershell
|
|
||||||
run: |
|
|
||||||
$nuspec_file = Get-ChildItem *.nuspec -recurse
|
|
||||||
echo "NUSPECNAME=$($nuspec_file.BaseName)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
|
||||||
echo "NUSPEC_FILE=$($nuspec_file.BaseName)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
|
||||||
- name: Download Build Version Info
|
|
||||||
if: "!contains(env.NUSPECNAME, 'EssentialsPluginTemplate')"
|
|
||||||
uses: actions/download-artifact@v1
|
|
||||||
with:
|
|
||||||
name: Version
|
|
||||||
- name: Set Version Number
|
|
||||||
if: "!contains(env.NUSPECNAME, 'EssentialsPluginTemplate')"
|
|
||||||
shell: powershell
|
|
||||||
run: |
|
|
||||||
Get-ChildItem "./Version"
|
|
||||||
$version = Get-Content -Path ./Version/version.txt
|
|
||||||
Write-Host "Version: $version"
|
|
||||||
echo "VERSION=$version" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
|
||||||
Remove-Item -Path ./Version/version.txt
|
|
||||||
Remove-Item -Path ./Version
|
|
||||||
- name: Download Build output
|
|
||||||
if: "!contains(env.NUSPECNAME, 'EssentialsPluginTemplate')"
|
|
||||||
uses: actions/download-artifact@v1
|
|
||||||
with:
|
|
||||||
name: Build
|
|
||||||
path: ./
|
|
||||||
- name: Unzip Build file
|
|
||||||
if: "!contains(env.NUSPECNAME, 'EssentialsPluginTemplate')"
|
|
||||||
run: |
|
|
||||||
Get-ChildItem .\*.zip | Expand-Archive -DestinationPath .\
|
|
||||||
Remove-Item -Path .\*.zip
|
|
||||||
- name: Copy Files to root & delete output directory
|
|
||||||
if: "!contains(env.NUSPECNAME, 'EssentialsPluginTemplate')"
|
|
||||||
run: |
|
|
||||||
Remove-Item -Path .\* -Include @("*.cpz","*.md","*.cplz","*.json","*.dll","*.clz")
|
|
||||||
Get-ChildItem -Path .\output\* | Copy-Item -Destination .\
|
|
||||||
Remove-Item -Path .\output -Recurse
|
|
||||||
#Pushes to github nuget store
|
|
||||||
- name: Add nuget.exe
|
|
||||||
if: "!contains(env.NUSPECNAME, 'EssentialsPluginTemplate')"
|
|
||||||
uses: nuget/setup-nuget@v1
|
|
||||||
- name: Add Github Packages source
|
|
||||||
if: "!contains(env.NUSPECNAME, 'EssentialsPluginTemplate')"
|
|
||||||
run: nuget sources add -name github -source https://nuget.pkg.github.com/pepperdash/index.json -username Pepperdash -password ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
# Pushes to nuget gallery, not needed unless publishing publicly
|
|
||||||
- name: Add nuget.org API Key
|
|
||||||
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPECNAME, 'EssentialsPluginTemplate')
|
|
||||||
run: nuget setApiKey ${{ secrets.NUGET_API_KEY }}
|
|
||||||
- name: Create nuget package
|
|
||||||
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPECNAME, 'EssentialsPluginTemplate')
|
|
||||||
run: nuget pack "./${{ env.NUSPEC_FILE}}.nuspec" -version ${{ env.VERSION }}
|
|
||||||
- name: Publish nuget package to Github registry
|
|
||||||
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPECNAME, 'EssentialsPluginTemplate')
|
|
||||||
run: nuget push **/*.nupkg -source github
|
|
||||||
- name: Publish nuget package to nuget.org
|
|
||||||
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPECNAME, 'EssentialsPluginTemplate')
|
|
||||||
run: nuget push **/*.nupkg -Source https://api.nuget.org/v3/index.json
|
|
||||||
Push_Nuget_Package:
|
Push_Nuget_Package:
|
||||||
needs: Build_Project
|
needs: Build_Project
|
||||||
runs-on: windows-2019
|
runs-on: windows-2019
|
||||||
env:
|
|
||||||
NUSPECNAME: default
|
|
||||||
steps:
|
steps:
|
||||||
- name: Download Build Version Info
|
- name: Download Build Version Info
|
||||||
uses: actions/download-artifact@v1
|
uses: actions/download-artifact@v1
|
||||||
@@ -267,26 +202,26 @@ jobs:
|
|||||||
shell: powershell
|
shell: powershell
|
||||||
run: |
|
run: |
|
||||||
$nuspec_file = (Get-ChildItem *.nuspec -recurse).BaseName
|
$nuspec_file = (Get-ChildItem *.nuspec -recurse).BaseName
|
||||||
echo "NUSPECNAME=$($nuspec_file)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
|
||||||
echo "NUSPEC_FILE=$($nuspec_file)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
echo "NUSPEC_FILE=$($nuspec_file)" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
||||||
|
# Pulls the nuget builder packages
|
||||||
#Pushes to github nuget store
|
|
||||||
- name: Add nuget.exe
|
- name: Add nuget.exe
|
||||||
if: "!contains(env.NUSPECNAME, 'EssentialsPluginTemplate')"
|
if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')"
|
||||||
uses: nuget/setup-nuget@v1
|
uses: nuget/setup-nuget@v1
|
||||||
|
# Creating nuget Packages
|
||||||
- name: Add Github Packages source
|
- name: Add Github Packages source
|
||||||
if: "!contains(env.NUSPECNAME, 'EssentialsPluginTemplate')"
|
if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')"
|
||||||
run: nuget sources add -name github -source https://nuget.pkg.github.com/pepperdash/index.json -username Pepperdash -password ${{ secrets.GITHUB_TOKEN }}
|
run: nuget sources add -name github -source https://nuget.pkg.github.com/pepperdash/index.json -username Pepperdash -password ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
- name: Create nuget package
|
||||||
|
if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')"
|
||||||
|
run: nuget pack "./${{ env.NUSPEC_FILE}}.nuspec" -version ${{ env.VERSION }}
|
||||||
|
# Pushes to internal github registry
|
||||||
|
- name: Publish nuget package to Github registry
|
||||||
|
if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')"
|
||||||
|
run: nuget push **/*.nupkg -source github
|
||||||
# Pushes to nuget gallery
|
# Pushes to nuget gallery
|
||||||
- name: Add nuget.org API Key
|
- name: Add nuget.org API Key
|
||||||
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPECNAME, 'EssentialsPluginTemplate')
|
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')
|
||||||
run: nuget setApiKey ${{ secrets.NUGET_API_KEY }}
|
run: nuget setApiKey ${{ secrets.NUGET_API_KEY }}
|
||||||
- name: Create nuget package
|
|
||||||
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPECNAME, 'EssentialsPluginTemplate')
|
|
||||||
run: nuget pack "./${{ env.NUSPEC_FILE}}.nuspec" -version ${{ env.VERSION }}
|
|
||||||
- name: Publish nuget package to Github registry
|
|
||||||
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPECNAME, 'EssentialsPluginTemplate')
|
|
||||||
run: nuget push **/*.nupkg -source github
|
|
||||||
- name: Publish nuget package to nuget.org
|
- name: Publish nuget package to nuget.org
|
||||||
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPECNAME, 'EssentialsPluginTemplate')
|
if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')
|
||||||
run: nuget push **/*.nupkg -Source https://api.nuget.org/v3/index.json
|
run: nuget push **/*.nupkg -Source https://api.nuget.org/v3/index.json
|
||||||
|
|||||||
14
README.md
14
README.md
@@ -29,6 +29,7 @@ The [Essentials](https://github.com/PepperDash/Essentials) libraries are require
|
|||||||
|
|
||||||
To install dependencies once nuget.exe is installed, run the following command from the root directory of your repository:
|
To install dependencies once nuget.exe is installed, run the following command from the root directory of your repository:
|
||||||
`nuget install .\packages.config -OutputDirectory .\packages -excludeVersion`.
|
`nuget install .\packages.config -OutputDirectory .\packages -excludeVersion`.
|
||||||
|
Alternatively, you can simply run the `GetPackages.bat` file.
|
||||||
To verify that the packages installed correctly, open the plugin solution in your repo and make sure that all references are found, then try and build it.
|
To verify that the packages installed correctly, open the plugin solution in your repo and make sure that all references are found, then try and build it.
|
||||||
|
|
||||||
### Installing Different versions of PepperDash Core
|
### Installing Different versions of PepperDash Core
|
||||||
@@ -37,7 +38,7 @@ If you need a different version of PepperDash Core, use the command `nuget insta
|
|||||||
|
|
||||||
### Instructions for Renaming Solution and Files
|
### Instructions for Renaming Solution and Files
|
||||||
|
|
||||||
See the Task List in Visual Studio for a guide on how to start using the templage. There is extensive inline documentation and examples as well.
|
See the Task List in Visual Studio for a guide on how to start using the template. There is extensive inline documentation and examples as well.
|
||||||
|
|
||||||
For renaming instructions in particular, see the XML `remarks` tags on class definitions
|
For renaming instructions in particular, see the XML `remarks` tags on class definitions
|
||||||
|
|
||||||
@@ -45,10 +46,13 @@ For renaming instructions in particular, see the XML `remarks` tags on class def
|
|||||||
|
|
||||||
## Generating Nuget Package
|
## Generating Nuget Package
|
||||||
|
|
||||||
In the solution folder is a file named "PDT.EssentialsPluginTemplate.nuspec-TEMPLATE"
|
In the solution folder is a file named "PDT.EssentialsPluginTemplate.nuspec"
|
||||||
|
|
||||||
1. Remove the -TEMPLATE so that the extention is .nuspec.
|
1. Rename the file to match your plugin solution name
|
||||||
2. Rename the file to match your plugin solution name
|
2. Edit the file to include your project specifics including
|
||||||
3. Edit the file to include your project specifics including
|
|
||||||
1. <id>PepperDash.Essentials.Plugin.MakeModel</id> Convention is to use the prefix "PepperDash.Essentials.Plugin" and include the MakeModel of the device.
|
1. <id>PepperDash.Essentials.Plugin.MakeModel</id> Convention is to use the prefix "PepperDash.Essentials.Plugin" and include the MakeModel of the device.
|
||||||
2. <projectUrl>https://github.com/PepperDash/EssentialsPluginTemplate</projectUrl> Change to your url to the project repo
|
2. <projectUrl>https://github.com/PepperDash/EssentialsPluginTemplate</projectUrl> Change to your url to the project repo
|
||||||
|
|
||||||
|
There is no longer a requirement to adjust workflow files for nuget generation for private and public repositories. This is now handled automatically in the workflow.
|
||||||
|
|
||||||
|
__If you do not make these changes to the nuspec file, the project will not generate a nuget package__
|
||||||
Reference in New Issue
Block a user