Skip to content

devlooped/runfile

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

82 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Icon dnx runfile

Version Downloads EULA OSS

Run C# code programs from git repos on GitHub (or gists), GitLab and Azure DevOps, whether public or private, from specific commits, branches or tags (or default branch).

Open Source Maintenance Fee

To ensure the long-term sustainability of this project, users of this package who generate revenue must pay an Open Source Maintenance Fee. While the source code is freely available under the terms of the License, this package and other aspects of the project require adherence to the Maintenance Fee.

To pay the Maintenance Fee, become a Sponsor at the proper OSMF tier. A single fee covers all of Devlooped packages.

dnx runfile

Run C# code programs from git repos on GitHub, GitLab and Azure DevOps.

Usage:
    [dnx] runfile [--aot] [--alias ALIAS] <repoRef> [<appArgs>...]

Arguments:
    <REPO_REF>  Reference to remote file to run, with format [host/]owner/repo[@ref][:path]
                host optional host name ([gist.]github.com|gitlab.com|dev.azure.com, default: github.com)
                @ref optional branch, tag, or commit (default: default branch)
                :path optional path to file in repo (default: program.cs at repo root)

                Examples:
                * kzu/sandbox@v1.0.0:run.cs           (implied host github.com, explicit tag and file path)
                * gitlab.com/kzu/sandbox@main:run.cs  (all explicit parts)
                * kzu/sandbox                         (implied host github.com, ref and path defaults)

                Can be an alias previously set with --alias.

    <appArgs>   Arguments passed to the C# program that is being run.

Options:
    --aot         (optional) Enable dotnet AOT defaults for run file.cs. Defaults to false.
    --alias ALIAS (optional) Assign an alias on first usage which can be used instead of the full ref.

Example:

dnx runfile kzu/runfile@v1:run.cs dotnet rocks

View source:

#:package Spectre.Console@*

using Spectre.Console;

AnsiConsole.MarkupLine($"Hello world from [green]dnx[/] [yellow]gist[/] :rocket: [bold italic]{string.Join(' ', args)}[/]");

Tip

The repo does not need to be public. Private repos will leverage the same authentication used by your local git to access the file, via the Git Credential Manager.

When running different files from the same repo+ref, the download will be performed only once. The last download etag is used to avoid downloading on each run.

dnx gist

Version Downloads

Run C# code programs from GitHub gists.

Usage: [dnx] gist [--aot] [--alias ALIAS] <gistRef> [<appArgs>...]

Arguments:
    <GIST_REF>  Reference to gist file to run, with format owner/gist[@commit][:path]
                @commit optional gist commit (default: latest)
                :path optional path to file in gist (default: program.cs or first .cs file)

                Examples:
                * kzu/0ac826dc7de666546aaedd38e5965381                 (tip commit and program.cs or first .cs file)
                * kzu/0ac826dc7de666546aaedd38e5965381@d8079cf:run.cs  (explicit commit and file path)

                Can be an alias previously set with --alias.

    <appArgs>   Arguments passed to the C# program that is being run.

Options:
    --aot         (optional) Enable dotnet AOT defaults for run file.cs. Defaults to false.
    --alias ALIAS (optional) Assign an alias on first usage which can be used instead of the full ref.

Tip

The gist does not need to be public. Private repos will leverage the same authentication used by your local git to access the file, via the Git Credential Manager.

Example:

dnx gist kzu/52b115ce24c7978ddc33245d4ff840f5 dotnet rocks

View source gist:

#:package Spectre.Console@*

using Spectre.Console;

AnsiConsole.MarkupLine($"Hello world from [green]dnx[/] [yellow]gist[/] :rocket: [bold italic]{string.Join(' ', args)}[/]");

When running different files from the same repo+ref, the download will be performed only once. The last download etag is used to avoid downloading on each run.

Dogfooding

CI Version

We also produce CI packages from branches and pull requests so you can dogfood builds as quickly as they are produced.

The CI feed is https://pkg.kzu.app/index.json.

The versioning scheme for packages is:

  • PR builds: 42.42.0-pr[NUMBER].[run]
  • Branch builds: 42.42.0-[BRANCH].[run]
  • Main builds: 42.42.[run]-main

Sponsors

Clarius Org MFB Technologies, Inc. DRIVE.NET, Inc. Keith Pickford Thomas Bolon Kori Francis Uno Platform Reuben Swartz Jacob Foshee Eric Johnson David JENNI Jonathan Charley Wu Ken Bonny Simon Cropp agileworks-eu Zheyu Shen Vezel ChilliCream 4OTC Vincent Limo domischell Justin Wendlandt Adrian Alonso Michael Hagedorn torutek mccaffers

Sponsor this project

Learn more about GitHub Sponsors

About

Run C# programs from gists or remote repositories

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

 

Contributors 4

  •  
  •  
  •  
  •