Skip to content
This repository was archived by the owner on May 4, 2024. It is now read-only.
/ site-cli Public archive

A command-line tool that help you more easily use Nginx

License

Notifications You must be signed in to change notification settings

panlatent/site-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Mar 27, 2018
99a6d38 · Mar 27, 2018
Dec 26, 2017
May 26, 2017
Jan 6, 2018
Jun 2, 2017
May 23, 2017
Apr 3, 2017
Apr 1, 2017
Mar 27, 2018
Dec 24, 2017
Dec 26, 2017
Apr 3, 2017
Jul 22, 2017

Repository files navigation

Site CLI

Build Status Latest Stable Version Total Downloads Latest Unstable Version License

A command-line tool that help you more easily use Nginx.

What's This

Site CLI is a command-line tool that helps you manage and switch Nginx local development environment configuration files.

This tool makes me lazy in the development, It's more than just cd && ls, ln -s, nginx -s , I enjoy it.

Features

  • Auto-Completion - Supports all commands, arguments and options auto-completion.
  • Grouping - Uses directories to group site configuration files. Support the operation of any item and ane group.
  • List - Use ls command quick see site list and information.
  • Switch - Use enable/disable command can quick switching site or group, it support service auto reload.
  • Service - Help you use the same command control service in different environments.
  • Alfred3 Workflow Support - Provide workflow helpe you quick search and switch site.

Installation

Download Phar file:

  • Phar Releases
$ mv site-cli.phar /usr/local/bin/site
$ chmod +x /usr/local/bin/site

Download the library using composer:

$ composer require panlatent/site-cli
$ ln -s ./bin/site-cli /usr/local/bin/site
$ chmod +x /usr/local/bin/site

Configuration

Custom Configuration

The default configuration provided by Site Cli works very well, but you can still customize it.

Run init command will create a .site-cli.yml file to your home directory. Edit this file:

site:
  available: ~/etc/nginx/sites-available
  enabled: ~/etc/nginx/sites-enabled

Add Completion

Run init --dump-completion will make a completion script contents and print to the terminal. Use -o, --output[=OUTPUT] will write to a file. Add shell complete in ~/.zshrc or ~/.bash_profile: source ~/.site-cli.sh

A example:

$ site init --dump-completion -o ~/.site-cli.bash
$ echo "source .site-cli.bash" >> ~/.zshrc

Usage

$ site [command] [argment]

Command List:

  • clear - Clear unless symbolic links
  • config - Get and set site-cli options
  • create - Create a new site
  • disable - Disable a site or a group sites
  • edit - Edit site configuration using editor
  • enable - Enable a site or a group sites
  • help - Displays help for a command
  • init - Init site-cli settings
  • ls - List groups and sites contents
  • service - Control site service process

Optional

Add nginx.conf vim syntax:

Download nginx.vim nginx vim

$ mv nginx.vim ~/.vim/syntax/
$ vi ~/.vim/filetype.vim

Add au BufRead,BufNewFile your_nginx_path/* set ft=nginx

License

The Site CLI is open-sourced software licensed under the MIT license.