Skip to content

Rails-Designer/beam_up

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Beam Up

Static site deployment CLI supporting multiple providers. Just run beam_up ./output.

Installation

If you have a Ruby environment available, you can install:

gem install beam_up

Configuration

Create a config file interactively:

beam_up init netlify
# api_token:
# project_id:

Or specify values programmatically (see Usage from Ruby for details).

You can also manually create .beam_up.yml (or config/beam_up.yml):

provider: netlify
# path: ./output  # optional
netlify:
  api_token: your_token_here
  project_id: your_project_id

If both files exist, config/beam_up.yml takes priority.

Deploy

# Deploy using configured provider
beam_up ./output

# Override provider for this deploy
beam_up ./output --to bunny
# or
beam_up ./output --provider bunny

Supported providers

  • aws_s3
  • bunny
  • digital_ocean_spaces
  • hetzner
  • neocities
  • netlify
  • Seal Static
  • sftp
  • statichost

Usage from Ruby

require "beam_up"

# Configure a provider interactively
BeamUp.init! "netlify"

# Deploy
BeamUp.deploy! "./output"

# Deploy with provider override
BeamUp.deploy! "./output", to: "bunny"
# or
BeamUp.deploy! "./output", provider: "bunny"

Hooks

Run commands before and after deployment:

provider: netlify

netlify:
  api_token: your_token_here
  project_id: your_project_id

before_actions:
  - npm run build
after_actions:
  - echo "Deployment complete ✨"

If a before_action fails, deployment is cancelled.

SFTP

Beam Up supports SFTP like the good ol' days. Requires additional gems:

gem install net-ssh net-sftp

Configuration:

provider: sftp

sftp:
  host: your-server.com
  username: deploy_user
  remote_path: /var/www/html
  # Use either password OR key:
  password: your_password
  # key: ~/.ssh/id_rsa

Contributing

This project uses Standard for formatting. Run rake before submitting pull requests.

License

MIT License


Fun fact: “Beam me up, Scotty” was never spoken in any Star Trek television episode or film.

About

A CLI tool to deploy your static sites. Support for Netlify, AWS S3, Seal Static and statichost

Topics

Resources

License

Stars

Watchers

Forks

Contributors