diff --git a/.github/workflows/essentialsplugins-betabuilds.yml b/.github/workflows/essentialsplugins-betabuilds.yml index 3b42815..3dd9b81 100644 --- a/.github/workflows/essentialsplugins-betabuilds.yml +++ b/.github/workflows/essentialsplugins-betabuilds.yml @@ -153,7 +153,7 @@ jobs: $exclusions = "packages" # Trying to get any .json schema files (not currently working) # Gets any files with the listed extensions. - Get-ChildItem -recurse -Path "$($Env:GITHUB_WORKSPACE)" -include "*.clz", "*.cpz", "*.cplz", "*.nuspec", "*.md" | ForEach-Object { + Get-ChildItem -recurse -Path "$($Env:GITHUB_WORKSPACE)" -include "*.clz", "*.cpz", "*.cplz", "*.nuspec" | ForEach-Object { $allowed = $true; # Exclude any files in submodules foreach ($exclude in $exclusions) { @@ -222,12 +222,23 @@ jobs: Push_Nuget_Package: needs: Build_Project runs-on: windows-2019 + env: + NUSPECNAME: default steps: + - name: Get nuget File + shell: powershell + run: | + $nuspec_file = Get-ChildItem *.nuspec -recurse + env.NUSPECNAME = $($nuspec_file.BaseName) + echo "NUSPEC_FILE=$($nuspec_file.BaseName)"| Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append + - name: Download Build Version Info + if: ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} uses: actions/download-artifact@v1 with: name: Version - name: Set Version Number + if: ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} shell: powershell run: | Get-ChildItem "./Version" @@ -237,43 +248,39 @@ jobs: Remove-Item -Path ./Version/version.txt Remove-Item -Path ./Version - name: Download Build output + if: ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} uses: actions/download-artifact@v1 with: name: Build path: ./ - name: Unzip Build file + if: ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} run: | Get-ChildItem .\*.zip | Expand-Archive -DestinationPath .\ Remove-Item -Path .\*.zip - name: Copy Files to root & delete output directory + if: ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} run: | Remove-Item -Path .\* -Include @("*.cpz","*.md","*.cplz","*.json","*.dll","*.clz") Get-ChildItem -Path .\output\* | Copy-Item -Destination .\ Remove-Item -Path .\output -Recurse - - name: Get nuget File - shell: powershell - run: | - $nuspec_file = (Get-ChildItem *.nuspec -recurse).BaseName - 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 - if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')" + if: ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} uses: nuget/setup-nuget@v1 - # Creating nuget Packages - name: Add Github Packages source - if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')" + if: ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} 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, not needed unless publishing publicly - name: Add nuget.org API Key - if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate') + if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} run: nuget setApiKey ${{ secrets.NUGET_API_KEY }} + - name: Create nuget package + if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && ${{env.NUSPECNAME != 'PDT.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' && ${{env.NUSPECNAME != 'PDT.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.NUSPEC_FILE, 'EssentialsPluginTemplate') + if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} run: nuget push **/*.nupkg -Source https://api.nuget.org/v3/index.json diff --git a/.github/workflows/essentialsplugins-releasebuilds.yml b/.github/workflows/essentialsplugins-releasebuilds.yml index 2ae1117..3cf0c26 100644 --- a/.github/workflows/essentialsplugins-releasebuilds.yml +++ b/.github/workflows/essentialsplugins-releasebuilds.yml @@ -170,12 +170,22 @@ jobs: Push_Nuget_Package: needs: Build_Project runs-on: windows-2019 + env: + NUSPECNAME: default steps: + - name: Get nuget File + shell: powershell + run: | + $nuspec_file = Get-ChildItem *.nuspec -recurse + env.NUSPECNAME = $($nuspec_file.BaseName) + echo "NUSPEC_FILE=$($nuspec_file.BaseName)"| Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append - name: Download Build Version Info + if: ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} uses: actions/download-artifact@v1 with: name: Version - name: Set Version Number + if: ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} shell: powershell run: | Get-ChildItem "./Version" @@ -185,43 +195,39 @@ jobs: Remove-Item -Path ./Version/version.txt Remove-Item -Path ./Version - name: Download Build output + if: ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} uses: actions/download-artifact@v1 with: name: Build path: ./ - name: Unzip Build file + if: ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} run: | Get-ChildItem .\*.zip | Expand-Archive -DestinationPath .\ Remove-Item -Path .\*.zip - name: Copy Files to root & delete output directory + if: ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} run: | Remove-Item -Path .\* -Include @("*.cpz","*.md","*.cplz","*.json","*.dll","*.clz") Get-ChildItem -Path .\output\* | Copy-Item -Destination .\ Remove-Item -Path .\output -Recurse - - name: Get nuget File - shell: powershell - run: | - $nuspec_file = (Get-ChildItem *.nuspec -recurse).BaseName - 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 - if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')" + if: ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} uses: nuget/setup-nuget@v1 - # Creating nuget Packages - name: Add Github Packages source - if: "!contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate')" + if: ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} 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, not needed unless publishing publicly - name: Add nuget.org API Key - if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && !contains(env.NUSPEC_FILE, 'EssentialsPluginTemplate') + if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} run: nuget setApiKey ${{ secrets.NUGET_API_KEY }} + - name: Create nuget package + if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && ${{env.NUSPECNAME != 'PDT.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' && ${{env.NUSPECNAME != 'PDT.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.NUSPEC_FILE, 'EssentialsPluginTemplate') + if: github.repository_owner == 'PepperDash' && github.repository_visibility == 'public' && ${{env.NUSPECNAME != 'PDT.EssentialsPluginTemplate'}} run: nuget push **/*.nupkg -Source https://api.nuget.org/v3/index.json diff --git a/README.md b/README.md index 458eca2..8dfb905 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,4 @@ -![PepperDash Essentials Pluign Logo](/images/essentials-plugin-blue.png) - -# Essentials Plugin Template (c) 2023 +# Essentials Plugin Template (c) 2020 ## License @@ -31,7 +29,6 @@ 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: `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. ### Installing Different versions of PepperDash Core @@ -40,7 +37,7 @@ If you need a different version of PepperDash Core, use the command `nuget insta ### Instructions for Renaming Solution and Files -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. +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. For renaming instructions in particular, see the XML `remarks` tags on class definitions @@ -48,13 +45,10 @@ For renaming instructions in particular, see the XML `remarks` tags on class def ## Generating Nuget Package -In the solution folder is a file named "PDT.EssentialsPluginTemplate.nuspec" +In the solution folder is a file named "PDT.EssentialsPluginTemplate.nuspec-TEMPLATE" -1. Rename the file to match your plugin solution name -2. Edit the file to include your project specifics including +1. Remove the -TEMPLATE so that the extention is .nuspec. +2. Rename the file to match your plugin solution name +3. Edit the file to include your project specifics including 1. PepperDash.Essentials.Plugin.MakeModel Convention is to use the prefix "PepperDash.Essentials.Plugin" and include the MakeModel of the device. - 2. https://github.com/PepperDash/EssentialsPluginTemplate 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__ \ No newline at end of file + 2. https://github.com/PepperDash/EssentialsPluginTemplate Change to your url to the project repo \ No newline at end of file diff --git a/images/essentials-plugin-blue.png b/images/essentials-plugin-blue.png deleted file mode 100644 index c94b320..0000000 Binary files a/images/essentials-plugin-blue.png and /dev/null differ diff --git a/images/essentials-plugin-white.png b/images/essentials-plugin-white.png deleted file mode 100644 index 73d6b3f..0000000 Binary files a/images/essentials-plugin-white.png and /dev/null differ