just emit 'log' events on the process object
Get the output of a process.
A minimal library for executing processes in Node
Opentelemetry resource detector to get container resource attributes
Spawn a dependent child process.
A Node.js interface for working with Android's logcat output.
Azure Functions Core Tools
TypeScript definitions for proc-log
proc(ess)-that - easy extendable etl tool for nodejs written in typesript
programmatically install npm dependencies
Provides metadata and conversions from repository urls for GitHub, Bitbucket and GitLab
TODO
pluggable core of node-tap
Process-isolated test runner for tape-six. Runs each test file in its own subprocess. Works with Node, Deno, and Bun. Supports TypeScript without transpilation.
Get raw git commits out of your repository using git-log(1).
rxjs operators for execute shell command with ease
a util for spawning git from npm CLI contexts
Simple GIT interface for node.js
A lightweight daemon framework for building persistent background agents that communicate over WebSocket using JSON-RPC 2.0. Originally built for [C4A](../../README.md) (Context For AI) to bridge remote servers with local filesystems and Git repositories,
List of Git hooks
A high level git url parser for common git providers.
API for interacting with the file system, asynchronously.
Get all git semver tags of your repository in reverse chronological order.
A low level git url parser.
A set of scripts to make working with git easier and more consistent
The libraries for the git-process suite of tools
Assigns a case-insensitive unique three-letter code to each record in a scope, based loosely on some other attribute of the record
# ruby unshare (runshare) This tool allows to unshare Linux namespaces. The implementation is similar to the unshare(1) tool. ## Installation Add this line to your application's Gemfile: ```ruby gem 'runshare' ``` And then execute: $ bundle Or install it yourself as: $ gem install runshare ## Usage > require "runshare" > RUnshare::unshare For example: cat > test.rb require "runshare" pid = RUnshare::unshare( :clone_newpid => true, :clone_newns => true, :clone_newcgroup => true, :clone_newipc => true, :clone_newuts => true, :clone_newnet => true, :clone_newtime => true, :fork => true, :mount_proc => "/proc", # docker export $(docker create hello-world) | tar -xf - -C rootfs :root => "/tmp/rootfs" ) if pid == 0 # child puts "--- #{Process.pid}" if system("/hello") != true raise "bad" end puts "--- done" else # parent puts "-- unshare=#{pid}, pid=#{Process.pid}" puts "-- exit=#{Process.waitpid(pid)}" end ^D sudo ruby -I ./lib ./test.rb ## Quick start $ rake compile && echo 'require "runshare"; RUnshare::unshare(:clone_newuts => true)' | irb install -c tmp/x86_64-linux/runshare/2.4.10/runshare.so lib/runshare/runshare.so cp tmp/x86_64-linux/runshare/2.4.10/runshare.so tmp/x86_64-linux/stage/lib/runshare/runshare.so Switch to inspect mode. require "runshare"; RUnshare::unshare ## Ruby <2.5 If your app is single threaded and you are observing: eval:1: warning: pthread_create failed for timer: Invalid argument, scheduling broken Just ignore it with some degree of bravity. You also can silence it by setting: $VERBOSE = nil ## Development After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment. To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org). ## Contributing Bug reports and pull requests are welcome on GitHub at https://github.com/sitano/runshare. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct. ## License The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.