Wolfram Language Paclet Repository

Community-contributed installable additions to the Wolfram Language

Primary Navigation

    • Cloud & Deployment
    • Core Language & Structure
    • Data Manipulation & Analysis
    • Engineering Data & Computation
    • External Interfaces & Connections
    • Financial Data & Computation
    • Geographic Data & Computation
    • Geometry
    • Graphs & Networks
    • Higher Mathematical Computation
    • Images
    • Knowledge Representation & Natural Language
    • Machine Learning
    • Notebook Documents & Presentation
    • Scientific and Medical Data & Computation
    • Social, Cultural & Linguistic Data
    • Strings & Text
    • Symbolic & Numeric Computation
    • System Operation & Setup
    • Time-Related Computation
    • User Interface Construction
    • Visualization & Graphics
    • Random Paclet
    • Alphabetical List
  • Using Paclets
    • Get Started
    • Download Definition Notebook
  • Learn More about Wolfram Language

PacletCICD

Tutorials

  • GitHub Actions Quick Start

Guides

  • Continuous Integration and Deployment
  • Custom CI/CD Workflows
  • Workflows

Tech Notes

  • License Entitlements and Repository Secrets

Symbols

  • BuildPaclet
  • CheckPaclet
  • CreatePublisherToken
  • ExampleDirectory
  • GitHubSecret
  • PublisherTokenObject
  • SubmitPaclet
  • WorkflowEvaluate
  • WorkflowExport
  • WorkflowJob
  • WorkflowJobQ
  • Workflow
  • WorkflowQ
  • WorkflowStep
  • WorkflowStepQ
  • WorkflowValue

Other

  • ResourcePublisherToken
  • WolframScriptEntitlementID
Wolfram`PacletCICD`
WorkflowExport
​
WorkflowExport
[dir,workflow]
creates a GitHub workflow YAML file for the Paclet located in
dir
.
​
Details and Options

Examples  
(7)
Basic Examples  
(2)
Load the PacletCICD package:
In[1]:=
Needs["Wolfram`PacletCICD`"];
​
Get an example paclet directory:
In[1]:=
dir=
ExampleDirectory
["MoreIssues"]
Out[1]=
File
C:/Users/rhennigan/AppData/Roaming/Mathematica/ApplicationData/Wolfram/PacletCICD/Examples/MoreIssues

Create a workflow to automatically check the paclet for issues:
In[2]:=
workflow=
WorkflowExport
[dir,"Check"]
Out[2]=
File
C:\Users\rhennigan\AppData\Roaming\Mathematica\ApplicationData\Wolfram\PacletCICD\Examples\MoreIssues\.github\workflows\Check.yml

Push the changes to a GitHub repository and the paclet will automatically be checked for errors:
When the check is complete, a summary of issues will be generated automatically:
Add some more problematic code to one of the package files:
In[3]:=
Export​​FileNameJoinFirst
ExampleDirectory
["MoreIssues"],"Kernel","MyPaclet.wl","(* This will be flagged in the commit diff *)If[a, b, b]<<SamplePublisher`MyPaclet`AddOne`<<SamplePublisher`MyPaclet`AddTwo`(* Here's another potential problem: *)<|a -> # + 1 &|>","String"
Out[3]=
C:\Users\rhennigan\AppData\Roaming\Mathematica\ApplicationData\Wolfram\PacletCICD\Examples\MoreIssues\Kernel\MyPaclet.wl
Commit and push the changes then view the commit on GitHub once the check finishes:
Scope  
(5)

SeeAlso
Workflow
 
▪
WorkflowJob
 
▪
WorkflowStep
TechNotes
▪
License Entitlements and Repository Secrets
RelatedGuides
▪
Continuous Integration and Deployment
▪
Workflows
""

Powered by the Wolfram Cloud More about Wolfram Technology

© 2022 Wolfram Research, Inc. All rights reserved. Terms of Use Privacy Contact Us