<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: jmpaddin development on Github in Discussions</title>
    <link>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/533110#M75594</link>
    <description>&lt;P&gt;I ran ours on tag for releases, but we had multiple developers and we wanted to have more general testing than what we had for all merge requests.&amp;nbsp; One thing that tripped me up REAL hard when having a CI pipeline run was having the pipeline run things as system.&amp;nbsp; I had to use PSExec to get past some JMP dialogs (just the first time).&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 11 Aug 2022 19:59:48 GMT</pubDate>
    <dc:creator>vince_faller</dc:creator>
    <dc:date>2022-08-11T19:59:48Z</dc:date>
    <item>
      <title>jmpaddin development on Github</title>
      <link>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/532749#M75559</link>
      <description>&lt;P&gt;I would like to migrate my add-in development to github and enable easy updating.&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;If I push code, a github action should run that zips the source folder up and creates the latest.jmpaddin in the root of the repo.&lt;/LI&gt;&lt;LI&gt;In the add-in I want to have a button that checks the latest.jmpaddin from the repo and downloads and installs if it is newer than the current version.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Before I go deep into developing this: is there anybody that already built something like this. Anything you can share?&lt;/P&gt;</description>
      <pubDate>Sat, 10 Jun 2023 20:52:05 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/532749#M75559</guid>
      <dc:creator>pauldeen</dc:creator>
      <dc:date>2023-06-10T20:52:05Z</dc:date>
    </item>
    <item>
      <title>Re: jmpaddin development on Github</title>
      <link>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/532902#M75569</link>
      <description>&lt;P&gt;&lt;STRONG&gt;Build&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;I just started working on this for my own add-ins, I got as far as a powershell script that I can kick off in GitLab using YAML, but I haven't dove into GitHub's CI yet.&amp;nbsp; Here is my first-draft build script:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-SPOILER&gt;
&lt;PRE&gt;#PowerShell
#Config
#  Set output file name
$FilePathPrefix = "JMPValidation"

#Run Unit Tests


#NaturalDocs
&amp;amp; "C:\Program Files (x86)\Natural Docs\NaturalDocs.exe" "NaturalDocs"


#Save temporary copy of files
$TempPath = "AddinFilesTempForBuild/"

if (Test-Path $TempPath) {
    Remove-Item -Recurse -Force -Confirm:$false $TempPath
}
New-Item -Path $TempPath -ItemType Directory

Copy-Item -Recurse -Path "AddinFiles\*" -Destination $TempPath

#Update temporary copy of files
$updatetime = Get-Date ((Get-Date).ToUniversalTime()) -UFormat %s
$updatetime = [math]::Round($updatetime) + 2082823200
$customMetadataPath = $TempPath+"customMetadata.jsl"
(Get-Content $customMetadataPath) `
    -replace 'List\( \"buildDate\", (\d+) \),', ('List( "buildDate", '+$updatetime+' ),') |
  Out-File $customMetadataPath
$content = Get-Content -path $customMetadataPath

#Make add-in file
$ZipFileName = $FilePathPrefix+".zip"
$AddinFileName = $FilePathPrefix+".jmpaddin"
if (Test-Path $ZipFileName) {
    Remove-Item -Recurse -Force -Confirm:$false  $ZipFileName
}
if (Test-Path $AddinFileName) {
    Remove-Item -Recurse -Force -Confirm:$false  $AddinFileName
}
$compress = @{
    Path = $TempPath+"\*"
    CompressionLevel = "Fastest"
    DestinationPath = $ZipFileName
}
Compress-Archive @compress
Rename-Item -Path $ZipFileName -NewName $AddinFileName

#Cleanup
if (Test-Path $TempPath) {
    Remove-Item -Recurse -Force -Confirm:$false $TempPath
}
&lt;/PRE&gt;
&lt;/LI-SPOILER&gt;
&lt;P&gt;&lt;STRONG&gt;Auto-Updating&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Check out this article:&lt;/P&gt;
&lt;P&gt;&lt;LI-MESSAGE title="Add-In Manager, Part 2: Deploying auto-updating add-ins to users" uid="47909" url="https://community.jmp.com/t5/JMPer-Cable/Add-In-Manager-Part-2-Deploying-auto-updating-add-ins-to-users/m-p/47909#U47909" discussion_style_icon_css="lia-mention-container-editor-message lia-img-icon-blog-thread lia-fa-icon lia-fa-blog lia-fa-thread lia-fa"&gt;&lt;/LI-MESSAGE&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 11 Aug 2022 11:39:48 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/532902#M75569</guid>
      <dc:creator>ih</dc:creator>
      <dc:date>2022-08-11T11:39:48Z</dc:date>
    </item>
    <item>
      <title>Re: jmpaddin development on Github</title>
      <link>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/532931#M75573</link>
      <description>&lt;P&gt;I have a working version.&lt;/P&gt;&lt;P&gt;Here is my code repository, code contributions are welcome!&lt;/P&gt;&lt;P&gt;&lt;A href="https://github.com/PaulAntonDeen/Auto-Updating-Addin" target="_blank" rel="noopener"&gt;https://github.com/PaulAntonDeen/Auto-Updating-Addin&lt;/A&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 11 Aug 2022 12:51:13 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/532931#M75573</guid>
      <dc:creator>pauldeen</dc:creator>
      <dc:date>2022-08-11T12:51:13Z</dc:date>
    </item>
    <item>
      <title>Re: jmpaddin development on Github</title>
      <link>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/533098#M75592</link>
      <description>&lt;P&gt;We have built something similar at our company, and we gave a talk on it at last year's JDS!&amp;nbsp;&lt;A href="https://community.jmp.com/t5/Discovery-Summit-Americas-2021/As-Easy-as-Uploading-a-Photo-Building-Sharing-and-Updating-Add/ta-p/398751" target="_blank"&gt;As Easy as Uploading a Photo: Building, Sharing, and Updating Add-ins Automatica... - JMP User Community&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We use GitLab but conceptually it's similar. We've included a ZIP of our build scripts at the link above.&lt;/P&gt;</description>
      <pubDate>Thu, 11 Aug 2022 18:43:35 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/533098#M75592</guid>
      <dc:creator>Michael_MXAK</dc:creator>
      <dc:date>2022-08-11T18:43:35Z</dc:date>
    </item>
    <item>
      <title>Re: jmpaddin development on Github</title>
      <link>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/533110#M75594</link>
      <description>&lt;P&gt;I ran ours on tag for releases, but we had multiple developers and we wanted to have more general testing than what we had for all merge requests.&amp;nbsp; One thing that tripped me up REAL hard when having a CI pipeline run was having the pipeline run things as system.&amp;nbsp; I had to use PSExec to get past some JMP dialogs (just the first time).&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 11 Aug 2022 19:59:48 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/533110#M75594</guid>
      <dc:creator>vince_faller</dc:creator>
      <dc:date>2022-08-11T19:59:48Z</dc:date>
    </item>
    <item>
      <title>Re: jmpaddin development on Github</title>
      <link>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/533113#M75595</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;P&gt;&lt;SPAN&gt;I ran ours on tag for releases, but we had multiple developers and we wanted to have more general testing than what we had for all merge requests.&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;SPAN&gt;Our solution as implemented immediately builds the add-in for any new commit on a branch named `beta` from literally anyone in our company who wants to contribute, and we have a staged multi-branch release that's owned by our maintainers who QC contributions on a two-week cycle for `main` branch releases. This introduces instantaneous builds but also a measure of quality control. That said, I wouldn't leave the `beta` branch building on demand in a public repo on the wide internet, that only works because I can tell if someone is trying to be nefarious, who it is, and there'd be repercussions for doing so.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;We also include functionality that automatically adds any `Function()` defined in a namespace in the `importables` directory into the JMP Scripting Index for JMP 14+, parsing out details of the function to form the documentation in the index. See the video, PDF, or ZIP from my talk for details! Also, please feel free to adapt or adopt anything from our codebase. We're fans of open practices!&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 11 Aug 2022 20:58:54 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/533113#M75595</guid>
      <dc:creator>Michael_MXAK</dc:creator>
      <dc:date>2022-08-11T20:58:54Z</dc:date>
    </item>
    <item>
      <title>Re: jmpaddin development on Github</title>
      <link>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/533265#M75617</link>
      <description>&lt;P&gt;Thanks, I did actually look at that before I started. I need to look into GitLab some more maybe.&lt;/P&gt;</description>
      <pubDate>Fri, 12 Aug 2022 11:22:56 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/533265#M75617</guid>
      <dc:creator>pauldeen</dc:creator>
      <dc:date>2022-08-12T11:22:56Z</dc:date>
    </item>
    <item>
      <title>Re: jmpaddin development on Github</title>
      <link>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/533266#M75618</link>
      <description>&lt;P&gt;Can you share your workflow yaml? Or were you also in GitLab?&lt;/P&gt;</description>
      <pubDate>Fri, 12 Aug 2022 11:23:27 GMT</pubDate>
      <guid>https://community.jmp.com/t5/Discussions/jmpaddin-development-on-Github/m-p/533266#M75618</guid>
      <dc:creator>pauldeen</dc:creator>
      <dc:date>2022-08-12T11:23:27Z</dc:date>
    </item>
  </channel>
</rss>

