Skip to content

Create buildsolution.yml #125

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 14 commits into from
Jun 14, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
84 changes: 84 additions & 0 deletions .github/workflows/buildsolution.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
name: GitHub Actions OrgDbOrgSettings Build
run-name: ${{ github.actor }} is building the OrgDbOrgSettings solution 🚀
on: [push]
jobs:
Build-OrgDbOrgSettings-GitHub-Actions:
runs-on: windows-latest
steps:
- run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!"
- run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
- name: Check out repository code
uses: actions/checkout@v4
- run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner."
- run: echo "🖥️ The workflow is now ready to test your code on the runner."
- name: List files in the repository dir we want to see recurse
run: |
#dir "$(Get-Location)\mspfedyn_\OrgDbOrgSettings\Solution" -Recurse
- name: Calculate paths and set several variables for packing the solution
run: |
$root = $env:GITHUB_WORKSPACE
$path = "\mspfedyn_\OrgDbOrgSettings\Solution"
$fullpath = Join-Path -Path $root -ChildPath $path
dir $fullpath
echo "fullpath=$fullpath" >> $env:VAR_FULLPATH
$currentPath = "$(Get-Location)\mspfedyn_\OrgDbOrgSettings\Solution"
echo "CurrentPath=$currentPath" >> $env:GITHUB_ENV
$ZipPath = Get-Location
echo "ZipPath=$zipPath" >> $env:GITHUB_ENV
write-host "ZipPath: $ZipPath"
write-host "currentPath: $currentPath"
- name: apply updated version
run: |
#edit settings.xml build number
$settingsXmlPath = "$(Get-Location)\mspfedyn_\OrgDbOrgSettings\Solution\WebResources\mspfedyn_\OrgDbOrgSettings\settings.xml"
#get solution xml path
$path = "$(Get-Location)\mspfedyn_\OrgDbOrgSettings\Solution\Other\Solution.xml"
Write-Host "Path: $path"
# Regular expression pattern to find the version in the build number
$VersionRegex = "\d+\.\d+\.\d+\.\d+"
$NewVersion = "1.0.$((get-date).ToString("yyMM.dd"))${{ github.run_number }}"
echo "NewVersion=$NewVersion" >> $env:GITHUB_ENV
write-host "Calculated version number is: $NewVersion"
$xml = New-Object System.Xml.XmlDocument
$xml.Load($path)
Write-Verbose "Writting XML: NewVersion $NewVersion"
$xml.ImportExportXml.SolutionManifest.Version = $NewVersion
Write-Verbose "Writting XML: SolutionPackageVersion $($Env:SolutionPackageVersion)"
$xml.ImportExportXml.SolutionPackageVersion = $Env:SolutionPackageVersion
Write-Verbose "Writting XML: ImportExportXmlVersion $($NewVersion)"
$xml.ImportExportXml.version = $NewVersion
$xml.ImportExportXml
$xml.Save($path)
Write-Host "Version $NewVersion applied to Solution.xml"
- name: Install Power Platform Tools
uses: microsoft/powerplatform-actions/actions-install@v1
- name: Pack Solution
uses: microsoft/powerplatform-actions/pack-solution@v1
with:
solution-file: "OrganizationSettingsEditor_${{ env.NewVersion }}.zip"
solution-folder: ${{ env.CurrentPath }}
solution-type: "both"
- name: unpack solution so github can repack it
run: |
$managedZipDirectory = "$(Get-Location)\_managedDirectory"
Expand-Archive -path "OrganizationSettingsEditor_${{ env.NewVersion }}_managed.zip" -DestinationPath $managedZipDirectory
#store path of the directory:
echo "managedZipDirectory=$managedZipDirectory" >> $env:GITHUB_ENV
# - name: Create Archive of everything for diagnosis
# uses: actions/upload-artifact@v4
# with:
# name: BuildOutputFiles
# path: ${{ env.ZipPath }}
# retention-days: 5
- name: 'Upload Artifact Managed Zip'
uses: actions/upload-artifact@v4
with:
name: "Solution_zip_of_zipfiles_v${{ env.NewVersion }}"
path: "OrganizationSettingsEditor_${{ env.NewVersion }}*.zip"
retention-days: 90
- name: 'Upload Artifact Managed re-zipped File'
uses: actions/upload-artifact@v4
with:
name: OrganizationSettingsEditor_${{ env.NewVersion }}
path: ${{ env.managedZipDirectory }}
34 changes: 17 additions & 17 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
################################################################################
# This .gitignore file was automatically created by Microsoft(R) Visual Studio.
################################################################################

/.vs/config/applicationhost.config

/.vs
.vs/
*.sqlite
*.suo
slnx.sqllite
VSWorkspaceState.json
*.sqlite
.vs/VSWorkspaceState.json
.vs/OrgDbOrgSettings/v15/.suo
/.vs/OrgDbOrgSettings/v15/.suo
.vs/slnx.sqlite
################################################################################
# This .gitignore file was automatically created by Microsoft(R) Visual Studio.
################################################################################
/.vs/config/applicationhost.config
/.vs
.vs/
*.sqlite
*.suo
slnx.sqllite
VSWorkspaceState.json
*.sqlite
.vs/VSWorkspaceState.json
.vs/OrgDbOrgSettings/v15/.suo
/.vs/OrgDbOrgSettings/v15/.suo
.vs/slnx.sqlite
42 changes: 21 additions & 21 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,21 +1,21 @@
MIT License

Copyright (c) Microsoft

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE
MIT License
Copyright (c) Microsoft
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE
16 changes: 16 additions & 0 deletions mspfedyn_/OrgDbOrgSettings/Solution/Other/Customizations.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<ImportExportXml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Entities />
<Roles />
<Workflows />
<FieldSecurityProfiles />
<Templates />
<EntityMaps />
<EntityRelationships />
<OrganizationSettings />
<optionsets />
<WebResources />
<Languages>
<Language>1033</Language>
</Languages>
</ImportExportXml>
2 changes: 2 additions & 0 deletions mspfedyn_/OrgDbOrgSettings/Solution/Other/Relationships.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8"?>
<EntityRelationships />
141 changes: 141 additions & 0 deletions mspfedyn_/OrgDbOrgSettings/Solution/Other/Solution.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
<?xml version="1.0" encoding="utf-8"?>
<ImportExportXml version="1.0.2406.1456" SolutionPackageVersion="" languagecode="1033" generatedBy="CrmLive" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SolutionManifest>
<UniqueName>OrganizationSettingsEditor</UniqueName>
<LocalizedNames>
<LocalizedName description="Organization Settings Editor (Dynamics 365)" languagecode="1033" />
</LocalizedNames>
<Descriptions>
<Description description="Project is located publicly at: http://github.com/seanmcne/orgDbOrgSettings&#xA;- This solution can only be imported into CRM 2016 and CRM v9 instances&#xA;- includes some organization attributes (in addition to all orgdborgsettings)&#xA;&#xA;The Organization Settings Editor is a webresource based utility which allows CRM admins to edit their orgDbOrgSettings (documented here: http://support.microsoft.com/kb/2691237), this approach is easier to configure, use, and understand over the currently provided utility in the aforementioned KB. This project began as a proof of concept and is in a state where I believe the code could be better organized but is functional. As I gauge usage of the utility and feedback I plan on updating it and clean up the code. &#xA;&#xA;This utility uses the following supporting libraries and technologies: &#xA;- AzureMobile services &#xA;- json2 (min)&#xA;- jQuery 1.11.0 (min)&#xA;The included settings.xml file is currently a static web resource and requires periodic updating via new versions of the solution - I will provide updates as new settings come out. Finally, this managed solution makes use of the AzureMobile service, if there is internet access from where this utility is run, it will query an endpoint within the AzureMobile service to check for newer version numbers of this managed solution and alert you of where to download the latest - this is strictly used to alert the admin of updates and does not collect any additional information from the system.&#xA;&#xA;Thanks for downloading and I welcome your feedback! &#xA;Sean McNellis&#xA;Premier Field Engineer&#xA;Blog: http://blogs.msdn.com/b/crminthefield" languagecode="1033" />
</Descriptions>
<Version>1.0.2406.1456</Version>
<Managed>2</Managed>
<ConfigurationPage>mspfedyn_/orgdborgsettings/orgdborgsettings.html</ConfigurationPage>
<Publisher>
<UniqueName>SeanMcNellis</UniqueName>
<LocalizedNames>
<LocalizedName description="Sean McNellis (PFE)" languagecode="1033" />
</LocalizedNames>
<Descriptions>
<Description description="Sean McNellis &#xA;Microsoft Premier Field Engineer: Dynamics CRM&#xA;http://www.pfedynamics.com/&#xA;Blog: http://blogs.msdn.com/crminthefield/" languagecode="1033" />
</Descriptions>
<EMailAddress xsi:nil="true">
</EMailAddress>
<SupportingWebsiteUrl>http://blogs.msdn.com/b/crminthefield</SupportingWebsiteUrl>
<CustomizationPrefix>mspfedyn</CustomizationPrefix>
<CustomizationOptionValuePrefix>86454</CustomizationOptionValuePrefix>
<Addresses>
<Address>
<AddressNumber>1</AddressNumber>
<AddressTypeCode>1</AddressTypeCode>
<City xsi:nil="true">
</City>
<County xsi:nil="true">
</County>
<Country xsi:nil="true">
</Country>
<Fax xsi:nil="true">
</Fax>
<FreightTermsCode xsi:nil="true">
</FreightTermsCode>
<ImportSequenceNumber xsi:nil="true">
</ImportSequenceNumber>
<Latitude xsi:nil="true">
</Latitude>
<Line1 xsi:nil="true">
</Line1>
<Line2 xsi:nil="true">
</Line2>
<Line3 xsi:nil="true">
</Line3>
<Longitude xsi:nil="true">
</Longitude>
<Name xsi:nil="true">
</Name>
<PostalCode xsi:nil="true">
</PostalCode>
<PostOfficeBox xsi:nil="true">
</PostOfficeBox>
<PrimaryContactName xsi:nil="true">
</PrimaryContactName>
<ShippingMethodCode>1</ShippingMethodCode>
<StateOrProvince xsi:nil="true">
</StateOrProvince>
<Telephone1 xsi:nil="true">
</Telephone1>
<Telephone2 xsi:nil="true">
</Telephone2>
<Telephone3 xsi:nil="true">
</Telephone3>
<TimeZoneRuleVersionNumber xsi:nil="true">
</TimeZoneRuleVersionNumber>
<UPSZone xsi:nil="true">
</UPSZone>
<UTCOffset xsi:nil="true">
</UTCOffset>
<UTCConversionTimeZoneCode xsi:nil="true">
</UTCConversionTimeZoneCode>
</Address>
<Address>
<AddressNumber>2</AddressNumber>
<AddressTypeCode>1</AddressTypeCode>
<City xsi:nil="true">
</City>
<County xsi:nil="true">
</County>
<Country xsi:nil="true">
</Country>
<Fax xsi:nil="true">
</Fax>
<FreightTermsCode xsi:nil="true">
</FreightTermsCode>
<ImportSequenceNumber xsi:nil="true">
</ImportSequenceNumber>
<Latitude xsi:nil="true">
</Latitude>
<Line1 xsi:nil="true">
</Line1>
<Line2 xsi:nil="true">
</Line2>
<Line3 xsi:nil="true">
</Line3>
<Longitude xsi:nil="true">
</Longitude>
<Name xsi:nil="true">
</Name>
<PostalCode xsi:nil="true">
</PostalCode>
<PostOfficeBox xsi:nil="true">
</PostOfficeBox>
<PrimaryContactName xsi:nil="true">
</PrimaryContactName>
<ShippingMethodCode>1</ShippingMethodCode>
<StateOrProvince xsi:nil="true">
</StateOrProvince>
<Telephone1 xsi:nil="true">
</Telephone1>
<Telephone2 xsi:nil="true">
</Telephone2>
<Telephone3 xsi:nil="true">
</Telephone3>
<TimeZoneRuleVersionNumber xsi:nil="true">
</TimeZoneRuleVersionNumber>
<UPSZone xsi:nil="true">
</UPSZone>
<UTCOffset xsi:nil="true">
</UTCOffset>
<UTCConversionTimeZoneCode xsi:nil="true">
</UTCConversionTimeZoneCode>
</Address>
</Addresses>
</Publisher>
<RootComponents>
<RootComponent type="61" schemaName="mspfedyn_/orgdborgsettings/jquery1_11_0.js" />
<RootComponent type="61" schemaName="mspfedyn_/orgdborgsettings/json2.js" />
<RootComponent type="61" schemaName="mspfedyn_/orgdborgsettings/orgdborgsettings.html" />
<RootComponent type="61" schemaName="mspfedyn_/orgdborgsettings/progress.gif" />
<RootComponent type="61" schemaName="mspfedyn_/orgdborgsettings/settings.xml" />
</RootComponents>
<MissingDependencies />
</SolutionManifest>
</ImportExportXml>
Loading