Skip to content

Commit 930adfe

Browse files
authored
Create buildsolution.yml (#125)
* Create buildsolution.yml *Moving files to new updated folder * * orgDBOrgSettings.html * * Settings.xml * Update buildsolution.yml
1 parent 90ee51c commit 930adfe

File tree

16 files changed

+11163
-38
lines changed

16 files changed

+11163
-38
lines changed

.github/workflows/buildsolution.yml

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
name: GitHub Actions OrgDbOrgSettings Build
2+
run-name: ${{ github.actor }} is building the OrgDbOrgSettings solution 🚀
3+
on: [push]
4+
jobs:
5+
Build-OrgDbOrgSettings-GitHub-Actions:
6+
runs-on: windows-latest
7+
steps:
8+
- run: echo "🎉 The job was automatically triggered by a ${{ github.event_name }} event."
9+
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by GitHub!"
10+
- run: echo "🔎 The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}."
11+
- name: Check out repository code
12+
uses: actions/checkout@v4
13+
- run: echo "💡 The ${{ github.repository }} repository has been cloned to the runner."
14+
- run: echo "🖥️ The workflow is now ready to test your code on the runner."
15+
- name: List files in the repository dir we want to see recurse
16+
run: |
17+
#dir "$(Get-Location)\mspfedyn_\OrgDbOrgSettings\Solution" -Recurse
18+
- name: Calculate paths and set several variables for packing the solution
19+
run: |
20+
$root = $env:GITHUB_WORKSPACE
21+
$path = "\mspfedyn_\OrgDbOrgSettings\Solution"
22+
$fullpath = Join-Path -Path $root -ChildPath $path
23+
dir $fullpath
24+
echo "fullpath=$fullpath" >> $env:VAR_FULLPATH
25+
$currentPath = "$(Get-Location)\mspfedyn_\OrgDbOrgSettings\Solution"
26+
echo "CurrentPath=$currentPath" >> $env:GITHUB_ENV
27+
$ZipPath = Get-Location
28+
echo "ZipPath=$zipPath" >> $env:GITHUB_ENV
29+
write-host "ZipPath: $ZipPath"
30+
write-host "currentPath: $currentPath"
31+
- name: apply updated version
32+
run: |
33+
#edit settings.xml build number
34+
$settingsXmlPath = "$(Get-Location)\mspfedyn_\OrgDbOrgSettings\Solution\WebResources\mspfedyn_\OrgDbOrgSettings\settings.xml"
35+
#get solution xml path
36+
$path = "$(Get-Location)\mspfedyn_\OrgDbOrgSettings\Solution\Other\Solution.xml"
37+
Write-Host "Path: $path"
38+
# Regular expression pattern to find the version in the build number
39+
$VersionRegex = "\d+\.\d+\.\d+\.\d+"
40+
$NewVersion = "1.0.$((get-date).ToString("yyMM.dd"))${{ github.run_number }}"
41+
echo "NewVersion=$NewVersion" >> $env:GITHUB_ENV
42+
write-host "Calculated version number is: $NewVersion"
43+
$xml = New-Object System.Xml.XmlDocument
44+
$xml.Load($path)
45+
Write-Verbose "Writting XML: NewVersion $NewVersion"
46+
$xml.ImportExportXml.SolutionManifest.Version = $NewVersion
47+
Write-Verbose "Writting XML: SolutionPackageVersion $($Env:SolutionPackageVersion)"
48+
$xml.ImportExportXml.SolutionPackageVersion = $Env:SolutionPackageVersion
49+
Write-Verbose "Writting XML: ImportExportXmlVersion $($NewVersion)"
50+
$xml.ImportExportXml.version = $NewVersion
51+
$xml.ImportExportXml
52+
$xml.Save($path)
53+
Write-Host "Version $NewVersion applied to Solution.xml"
54+
- name: Install Power Platform Tools
55+
uses: microsoft/powerplatform-actions/actions-install@v1
56+
- name: Pack Solution
57+
uses: microsoft/powerplatform-actions/pack-solution@v1
58+
with:
59+
solution-file: "OrganizationSettingsEditor_${{ env.NewVersion }}.zip"
60+
solution-folder: ${{ env.CurrentPath }}
61+
solution-type: "both"
62+
- name: unpack solution so github can repack it
63+
run: |
64+
$managedZipDirectory = "$(Get-Location)\_managedDirectory"
65+
Expand-Archive -path "OrganizationSettingsEditor_${{ env.NewVersion }}_managed.zip" -DestinationPath $managedZipDirectory
66+
#store path of the directory:
67+
echo "managedZipDirectory=$managedZipDirectory" >> $env:GITHUB_ENV
68+
# - name: Create Archive of everything for diagnosis
69+
# uses: actions/upload-artifact@v4
70+
# with:
71+
# name: BuildOutputFiles
72+
# path: ${{ env.ZipPath }}
73+
# retention-days: 5
74+
- name: 'Upload Artifact Managed Zip'
75+
uses: actions/upload-artifact@v4
76+
with:
77+
name: "Solution_zip_of_zipfiles_v${{ env.NewVersion }}"
78+
path: "OrganizationSettingsEditor_${{ env.NewVersion }}*.zip"
79+
retention-days: 90
80+
- name: 'Upload Artifact Managed re-zipped File'
81+
uses: actions/upload-artifact@v4
82+
with:
83+
name: OrganizationSettingsEditor_${{ env.NewVersion }}
84+
path: ${{ env.managedZipDirectory }}

.gitignore

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
1-
################################################################################
2-
# This .gitignore file was automatically created by Microsoft(R) Visual Studio.
3-
################################################################################
4-
5-
/.vs/config/applicationhost.config
6-
7-
/.vs
8-
.vs/
9-
*.sqlite
10-
*.suo
11-
slnx.sqllite
12-
VSWorkspaceState.json
13-
*.sqlite
14-
.vs/VSWorkspaceState.json
15-
.vs/OrgDbOrgSettings/v15/.suo
16-
/.vs/OrgDbOrgSettings/v15/.suo
17-
.vs/slnx.sqlite
1+
################################################################################
2+
# This .gitignore file was automatically created by Microsoft(R) Visual Studio.
3+
################################################################################
4+
5+
/.vs/config/applicationhost.config
6+
7+
/.vs
8+
.vs/
9+
*.sqlite
10+
*.suo
11+
slnx.sqllite
12+
VSWorkspaceState.json
13+
*.sqlite
14+
.vs/VSWorkspaceState.json
15+
.vs/OrgDbOrgSettings/v15/.suo
16+
/.vs/OrgDbOrgSettings/v15/.suo
17+
.vs/slnx.sqlite

LICENSE

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
1-
MIT License
2-
3-
Copyright (c) Microsoft
4-
5-
Permission is hereby granted, free of charge, to any person obtaining a copy
6-
of this software and associated documentation files (the "Software"), to deal
7-
in the Software without restriction, including without limitation the rights
8-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9-
copies of the Software, and to permit persons to whom the Software is
10-
furnished to do so, subject to the following conditions:
11-
12-
The above copyright notice and this permission notice shall be included in all
13-
copies or substantial portions of the Software.
14-
15-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21-
SOFTWARE
1+
MIT License
2+
3+
Copyright (c) Microsoft
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<ImportExportXml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
3+
<Entities />
4+
<Roles />
5+
<Workflows />
6+
<FieldSecurityProfiles />
7+
<Templates />
8+
<EntityMaps />
9+
<EntityRelationships />
10+
<OrganizationSettings />
11+
<optionsets />
12+
<WebResources />
13+
<Languages>
14+
<Language>1033</Language>
15+
</Languages>
16+
</ImportExportXml>
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<EntityRelationships />
Lines changed: 141 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<ImportExportXml version="1.0.2406.1456" SolutionPackageVersion="" languagecode="1033" generatedBy="CrmLive" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
3+
<SolutionManifest>
4+
<UniqueName>OrganizationSettingsEditor</UniqueName>
5+
<LocalizedNames>
6+
<LocalizedName description="Organization Settings Editor (Dynamics 365)" languagecode="1033" />
7+
</LocalizedNames>
8+
<Descriptions>
9+
<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" />
10+
</Descriptions>
11+
<Version>1.0.2406.1456</Version>
12+
<Managed>2</Managed>
13+
<ConfigurationPage>mspfedyn_/orgdborgsettings/orgdborgsettings.html</ConfigurationPage>
14+
<Publisher>
15+
<UniqueName>SeanMcNellis</UniqueName>
16+
<LocalizedNames>
17+
<LocalizedName description="Sean McNellis (PFE)" languagecode="1033" />
18+
</LocalizedNames>
19+
<Descriptions>
20+
<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" />
21+
</Descriptions>
22+
<EMailAddress xsi:nil="true">
23+
</EMailAddress>
24+
<SupportingWebsiteUrl>http://blogs.msdn.com/b/crminthefield</SupportingWebsiteUrl>
25+
<CustomizationPrefix>mspfedyn</CustomizationPrefix>
26+
<CustomizationOptionValuePrefix>86454</CustomizationOptionValuePrefix>
27+
<Addresses>
28+
<Address>
29+
<AddressNumber>1</AddressNumber>
30+
<AddressTypeCode>1</AddressTypeCode>
31+
<City xsi:nil="true">
32+
</City>
33+
<County xsi:nil="true">
34+
</County>
35+
<Country xsi:nil="true">
36+
</Country>
37+
<Fax xsi:nil="true">
38+
</Fax>
39+
<FreightTermsCode xsi:nil="true">
40+
</FreightTermsCode>
41+
<ImportSequenceNumber xsi:nil="true">
42+
</ImportSequenceNumber>
43+
<Latitude xsi:nil="true">
44+
</Latitude>
45+
<Line1 xsi:nil="true">
46+
</Line1>
47+
<Line2 xsi:nil="true">
48+
</Line2>
49+
<Line3 xsi:nil="true">
50+
</Line3>
51+
<Longitude xsi:nil="true">
52+
</Longitude>
53+
<Name xsi:nil="true">
54+
</Name>
55+
<PostalCode xsi:nil="true">
56+
</PostalCode>
57+
<PostOfficeBox xsi:nil="true">
58+
</PostOfficeBox>
59+
<PrimaryContactName xsi:nil="true">
60+
</PrimaryContactName>
61+
<ShippingMethodCode>1</ShippingMethodCode>
62+
<StateOrProvince xsi:nil="true">
63+
</StateOrProvince>
64+
<Telephone1 xsi:nil="true">
65+
</Telephone1>
66+
<Telephone2 xsi:nil="true">
67+
</Telephone2>
68+
<Telephone3 xsi:nil="true">
69+
</Telephone3>
70+
<TimeZoneRuleVersionNumber xsi:nil="true">
71+
</TimeZoneRuleVersionNumber>
72+
<UPSZone xsi:nil="true">
73+
</UPSZone>
74+
<UTCOffset xsi:nil="true">
75+
</UTCOffset>
76+
<UTCConversionTimeZoneCode xsi:nil="true">
77+
</UTCConversionTimeZoneCode>
78+
</Address>
79+
<Address>
80+
<AddressNumber>2</AddressNumber>
81+
<AddressTypeCode>1</AddressTypeCode>
82+
<City xsi:nil="true">
83+
</City>
84+
<County xsi:nil="true">
85+
</County>
86+
<Country xsi:nil="true">
87+
</Country>
88+
<Fax xsi:nil="true">
89+
</Fax>
90+
<FreightTermsCode xsi:nil="true">
91+
</FreightTermsCode>
92+
<ImportSequenceNumber xsi:nil="true">
93+
</ImportSequenceNumber>
94+
<Latitude xsi:nil="true">
95+
</Latitude>
96+
<Line1 xsi:nil="true">
97+
</Line1>
98+
<Line2 xsi:nil="true">
99+
</Line2>
100+
<Line3 xsi:nil="true">
101+
</Line3>
102+
<Longitude xsi:nil="true">
103+
</Longitude>
104+
<Name xsi:nil="true">
105+
</Name>
106+
<PostalCode xsi:nil="true">
107+
</PostalCode>
108+
<PostOfficeBox xsi:nil="true">
109+
</PostOfficeBox>
110+
<PrimaryContactName xsi:nil="true">
111+
</PrimaryContactName>
112+
<ShippingMethodCode>1</ShippingMethodCode>
113+
<StateOrProvince xsi:nil="true">
114+
</StateOrProvince>
115+
<Telephone1 xsi:nil="true">
116+
</Telephone1>
117+
<Telephone2 xsi:nil="true">
118+
</Telephone2>
119+
<Telephone3 xsi:nil="true">
120+
</Telephone3>
121+
<TimeZoneRuleVersionNumber xsi:nil="true">
122+
</TimeZoneRuleVersionNumber>
123+
<UPSZone xsi:nil="true">
124+
</UPSZone>
125+
<UTCOffset xsi:nil="true">
126+
</UTCOffset>
127+
<UTCConversionTimeZoneCode xsi:nil="true">
128+
</UTCConversionTimeZoneCode>
129+
</Address>
130+
</Addresses>
131+
</Publisher>
132+
<RootComponents>
133+
<RootComponent type="61" schemaName="mspfedyn_/orgdborgsettings/jquery1_11_0.js" />
134+
<RootComponent type="61" schemaName="mspfedyn_/orgdborgsettings/json2.js" />
135+
<RootComponent type="61" schemaName="mspfedyn_/orgdborgsettings/orgdborgsettings.html" />
136+
<RootComponent type="61" schemaName="mspfedyn_/orgdborgsettings/progress.gif" />
137+
<RootComponent type="61" schemaName="mspfedyn_/orgdborgsettings/settings.xml" />
138+
</RootComponents>
139+
<MissingDependencies />
140+
</SolutionManifest>
141+
</ImportExportXml>

0 commit comments

Comments
 (0)