Run a command using sudo, prompting the user with an OS dialog if necessary
Execute shell command forwarding all stdio.
Actions exec lib
A tiny cross-platform promise based wrapper around child_process.spawn.
Returns a promise with the results of a shell command
Percy CLI commands for running a local snapshot server using [`@percy/core`](./packages/core).
semantic-release plugin to run custom shell commands
Regular expression for matching a shebang line
A grown up version of Node's spawn/exec
Lerna-Lite Exec command will execute an arbitrary command in each package
Limit the shell execution commands to <x> calls same time.
Run a buffer through a child process
Synchronous exec with status code support. Requires no external dependencies, no need for node-gyp compilations etc.
Run commands in order
Creates .d.ts files from CSS Modules .css files
Run any OpenAPI spec as an Agent optimized executable
CLI tool to update caniuse-lite to refresh target browsers from Browserslist config
Replacement for shelljs' slow exec method - benchmarked 20x faster
Secure Node.js execution without a sandbox. V8 isolate-based code execution with full Node.js and npm compatibility.
A simple Node.js wrapper for yt-dlp
A fast story book powered by Vite
Secure Node.js execution without a sandbox. V8 isolate-based code execution with full Node.js and npm compatibility.
TypeScript JIT compiler built for correctness and supports legacy/experimental decorators
Secure Node.js execution without a sandbox. V8 isolate-based code execution with full Node.js and npm compatibility.
# Sambot Sambot is our internal Platform Engineering toolchain to help standardize and simplify our DevOps workflow. It provides an executable with a variety of commands, grouped in various areas of functionality such as session management, DNS changes and cookbook management. ## Usage To install the gem, simply run `chef gem install sambot`. This will install the gem in your ChefDK installation. If you want to use it outside Chef, run `gem install sambot`. Run `chef exec sambot` to be shown the help menu. For help on specific commands, i.e. cookbook management and specific cookbook management commands, run `chef exec sambot help cookbook` or `chef exec sambot cookbook help generate` for example. ## Contributing Bug reports and pull requests are welcome on GitHub at https://github.exacttarget.com/ads-devops/sambot. ### Installation Make sure you have `ruby >= 2.4.0` installed. Install `bundler >= 1.15.1` by running `gem install bundler` Run `bundle install` from the root of the project to install the required Ruby gems. ### Running Sambot If you want to test your changes locally, you can run `bundle exec bin/sambot`. ### Running Tests Run `bundle exec rspec spec` to execute the unit tests. Run `cd integration_tests && bundle exec rspec .` to execute the integration tests. These require that you have Docker Compose available. ### Linting There is nothing here yet
Heel is a small static web server for use when you need a quick web server for a directory. Once the server is running, heel will use (https://rubygems.org/gems/launchy/) to open your browser at the URL of your document root. Run it right now! `gem exec heel` ----- Heel is built using (https://github.com/rack/rack) and (https://puma.io) % heel Launching your browser... Puma starting in single mode... * Puma version: 6.2.1 (ruby 3.2.2-p53) ("Speaking of Now") * Min threads: 0 * Max threads: 5 * Environment: none * PID: 11322 * Listening on http://0.0.0.0:4331 Use Ctrl-C to stop Or run it in the background % heel --daemonize Launching your browser at http://0.0.0.0:4331/ % heel --kill Sending TERM to process 3304 Done.
# 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).
## DESCRIPTION: Ruby interface to a C++ implemention of the A\* search algorithm. The C++ implementaion is found here <http://code.google.com/p/a-star-algorithm-implementation/> ## FEATURES: ## SYNOPSIS: See `spec\castar_spec.rb` for usage examples. Create an empty map and plan a path across it: require 'castar' include Castar map = init_map(:width => 4, :height => 3) astar = HeyesDriver.new(map, HeyesDriver::EIGHT_NEIGHBORS) astar.run(0,0,3,2) puts get_map_with_path(astar) |S|1|1|1| |1|*|1|1| |1|1|*|G| Load a map from a text file and plan a path: map = load_map('./spec/map_20.txt') astar = HeyesDriver.new(map, HeyesDriver::EIGHT_NEIGHBORS) astar.run(0,0,19,19) puts get_map_with_path(astar) |S|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1| |1|*|*|*|*|*|1|1|1|1|1|1|1|1|1|1|1|1|1|1| |1|1|9|9|9|9|*|1|1|1|1|9|9|9|9|9|9|9|9|9| |1|1|9|9|9|9|1|*|1|1|1|9|9|9|9|9|9|9|9|9| |1|1|9|9|9|9|1|1|*|1|1|9|9|9|9|9|9|9|9|9| |1|1|9|9|9|9|1|1|1|*|1|9|9|9|9|9|9|9|9|9| |1|1|9|9|9|9|1|1|1|1|*|9|9|9|9|9|9|9|9|9| |1|1|9|9|9|9|1|1|1|1|*|9|9|9|9|9|9|9|9|9| |1|1|1|1|1|1|1|1|1|1|*|9|9|9|9|9|9|9|9|9| |1|1|1|1|1|1|1|1|1|1|*|9|9|9|9|9|9|9|9|9| |1|1|1|1|1|1|1|1|1|1|1|*|1|1|1|1|1|1|1|1| |1|1|1|1|1|1|1|1|1|1|1|1|*|*|*|*|*|1|1|1| |1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|*|1|1| |1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|1|*|1| |1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|1|1|*| |1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|1|1|*| |1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|1|1|*| |1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|1|1|*| |1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|*| |1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|G| ## REQUIREMENTS: * Ruby 1.9 * C compiler for C extensions ## DEVELOPMENT To modify the gem in a cloned repo this is what I'm doing (from root of gem): bundle install cd ext/ ruby extconf.rb make These steps will install the development dependencies, build the Makefile and compile the C++ code. Running bundle exec rspec ./spec should show all tests passing. To clean up the autogenerated Makefile and the compiled objects: cd ext/ make realclean If you need to regenerate the ruby interface functions `heyes_wrap.cxx`, run: cd swig/ swig -c++ -ruby heyes.i mv heyes_wrap.cxx ../ext If you are just trying to run the tests: rake build gem install pkg/castar-0.0.1.gem builds the gem and installs it to your local machine. gem which castar tells you where it is. You can then cd to that directory and run the tests as above (but since you're not in a git repo you can't commit them). I followed the instructions [here](https://github.com/radar/guides/blob/master/gem-development.md) for using Bundler to create the gem. ## INSTALL: * gem install castar ## LICENSE: (The MIT License)
Contentful API wrapper library exposing an ActiveRecord-like interface