Require specific environment variables. If they don't exist, the application exits
Offers getProxyForUrl to get the proxy URL for a URL, respecting the *_PROXY (e.g. HTTP_PROXY) and NO_PROXY environment variables.
Detect Node.JS (as opposite to browser environment). ESM modification
A global executable to run applications with the ENV variables loaded by dotenv
Get the PATH environment variable key cross-platform
Node.js log generator for log engine
A library for obtaining browser versions with their maximum supported Baseline feature set and Widely Available status.
Cross platform environment variables with process.env, window.name, location.hash and localStorage fallbacks
Expand environment variables using dotenv
Run scripts that set and use environment variables across platforms
Detect Node.JS (as opposite to browser environment) (reliable)
Fast (and loose) selective `process.env` replacer using js-tokens instead of an AST
A better opn. Reuse the same tab on Chrome for 👨💻.
HANDLE CONFIGURATION ONCE AND FOR ALL
Loads environment variables from .env file
Use Environment Variables in String
Environment variable support for JavaScript
Loads environment variables from `.env.[development|test|production][.local]` files
Metapackage which bundles opentelemetry node core and contrib instrumentations
Install a transform to `require.extensions` that always runs last, even if additional extensions are added later.
Detects what package manager executes the process
Convert modern CSS into something browsers understand
Load environment variables from .env and ensure they are defined
Get stdout window width, with two fallbacks, tty and then a default.
Creates a STRICT_ENV constant that you can query for environment variables and get meaningful exceptions
Checks required env variables and its format using dotenv and .env.sample files. Sample files include validation documentation which is interpreted and used to validate your environment.
Load environment variables from multiple .env files with configurable precedence, type coercion, required key validation, default values, and template generation for documentation.
env-enforcer allows you to list your required ENV variables, and checks for their presence at deploy time.
Simple rake task to deploy a static website to aws s3 Minifies and gzips assets. Requires ENV variables (can be read from .env or travis if in CI) : AWS_REGION AWS_BUCKET_NAME AWS_SECRET_KEY AWS_ACCESS_KEY
Define required/optional ENV variables with type casting and validation.
Valid-env allows you to specify the environment variables that are required, those that are optional, and those that depend on one another, and will throw a useful error message immediately if something is missing.
StandardHealth is a mountable Rails engine providing /alive, /ready, and /diagnostics/env endpoints, with a configuration block for registering custom checks and a DSL for declaring required and recommended environment variables.
Envsafe is a standalone CLI utility for managing your .env files without project integration. Quickly back up your current environment, restore from any saved version, and compare your .env file against .env.example to catch missing or extra variables. Think of it as git stash for your .env. Core features: - Backup and restore .env files with optional tags - Pop the latest backup off the stack - Checkout any saved .env version or return to main - Validate .env vs .env.example - CLI-native — no Gemfile or code integration required Envsafe gives you safe, versioned control of your app’s environment variables — without the overhead.
EnvCheck is a lightweight Ruby gem that ensures your required and optional environment variables are present and valid before your app boots. Features smart config discovery (.env_check.yml or config/env_check.yml), comprehensive type validation with 9 built-in validators, .env loading with dotenv, and professional CLI tools. Framework-agnostic design works with Rails 7.1+ through Rails 8.0+, Ruby 3.0+.
# holepunch [](http://badge.fury.io/rb/holepunch) [](https://travis-ci.org/undeadlabs/holepunch) Holepunch manages AWS EC2 security groups in a declarative way through a DSL. ## Requirements - Ruby 1.9.3 or newer. ## Installation ```bash gem install holepunch ``` or in your Gemfile ```ruby gem 'holepunch' ``` ## Basic Configuration You need to provide your AWS security credentials and a region. These can be provided via the command-line options, or you can use the standard AWS environment variables: ```bash export AWS_ACCESS_KEY_ID='...' export AWS_SECRET_ACCESS_KEY='...' export AWS_REGION='us-west-2' ``` ## The SecurityGroups file Specify your security groups in a `SecurityGroups` file in your project's root. Declare security groups that you need and the ingresses you want to expose. You can add ingresses using `tcp`, `udp`, and `ping`. For each ingress you can list allowed hosts using group names or CIDR notation. ```ruby group 'web' do desc 'Web servers' tcp 80 end group 'db' do desc 'database servers' tcp 5432, 'web' end group 'log' do desc 'log server' tcp 9999, 'web', 'db', '10.1.0.0/16' end ``` An environment can be specified which is available through the `env` variable. This allows you to have custom security groups per server environment. ```ruby group "#{env}-web" group "#{env}-db" do tcp 5432, "#{env}-web" end ``` Your application may depend on security groups defined by other services. Ensure they exist using the `depends` method. ```ruby depends 'my-other-service' group 'my-service' do udp 9999, 'my-other-service' end ``` You may specify port ranges for `tcp` and `udp` using the range operator. ```ruby group 'my-service' do udp 5000..9999, '0.0.0.0/0' end ``` You can specify ping/icmp rules with `icmp` (alias: `ping`). ```ruby group 'my-service' do ping '10.0.0.0/16' end ``` It can be useful to describe groups of security groups you plan to launch instances with by using the `service` declaration. ```ruby service "#{env}-web" do groups %W( admin #{env}-log-producer #{env}-web ) end ``` ## Usage Simply navigate to the directory containing your `SecurityGroups` file and run `holepunch`. ``` $ holepunch ``` If you need to specify an environment: ``` $ holepunch -e live ``` You can get a list of security groups for a service using the `service` subcommand. ``` $ holepunch service -e prod prod-web admin,prod-log-producer,prod-web ``` You can also get a list of all defined services. ``` $ holepunch service --list ``` ## Testing You can run the unit tests by simply running rspec. ``` $ rspec ``` By default the integration tests with EC2 are not run. You may run them with: ``` $ rspec -t integration ``` ## Authors - Ben Scott (gamepoet@gmail.com) - Pat Wyatt (pat@codeofhonor.com) ## License Copyright 2014 Undead Labs, LLC. Licensed under the MIT License: http://opensource.org/licenses/MIT
========================================================= FreeSWITCHeR Copyright (c) 2009 The Rubyists (Jayson Vaughn, Tj Vanderpoel, Michael Fellinger, Kevin Berry) Distributed under the terms of the MIT License. ========================================================== About ----- *** STILL UNDER HEAVY DEVELOPMENT *** A ruby library for interacting with the "FreeSWITCH" (http://www.freeswitch.org) opensource telephony platform *** STILL UNDER HEAVY DEVELOPMENT *** Requirements ------------ - ruby (>= 1.8) - eventmachine (If you wish to use Outbound and Inbound listener) Usage ----- Example of originating a new call in 'irb' using FSR::CommandSocket#originate: irb(main):001:0> require 'fsr' => true irb(main):002:0> FSR.load_all_commands => [:sofia, :originate] irb(main):003:0> sock = FSR::CommandSocket.new => #<FSR::CommandSocket:0xb7a89104 @server="127.0.0.1", @socket=#<TCPSocket:0xb7a8908c>, @port="8021", @auth="ClueCon"> irb(main):007:0> sock.originate(:target => 'sofia/gateway/carlos/8179395222', :endpoint => FSR::App::Bridge.new("user/bougyman")).run => {"Job-UUID"=>"732075a4-7dd5-4258-b124-6284a82a5ae7", "body"=>"", "Content-Type"=>"command/reply", "Reply-Text"=>"+OK Job-UUID: 732075a4-7dd5-4258-b124-6284a82a5ae7"} Example of creating an Outbound Eventsocket listener: #!/usr/bin/env ruby require 'fsr' require "fsr/listener/outbound" class OesDemo < FSR::Listener::Outbound def session_initiated(session) number = session.headers[:caller_caller_id_number] # Grab the inbound caller id FSR::Log.info "*** Answering incoming call from #{number}" answer # Answer the call set "hangup_after_bridge=true" # Set a variable speak 'Hello, This is your phone switch. Have a great day' # use mod_flite to speak hangup # Hangup the call end end FSR.start_oes!(OesDemo, :port => 1888, :host => "localhost") Example of creating an Inbound Eventsocket listener: #!/usr/bin/env ruby require 'fsr' require "fsr/listener/inbound" class IesDemo < FSR::Listener::Inbound def on_event(event) pp event.headers pp event.content[:event_name] end end FSR.start_ies!(IesDemo, :host => "localhost", :port => 8021) Support ------- Home page at http://code.rubyists.com/projects/fs #rubyists on FreeNode