Git Product home page Git Product logo

installer's People

Contributors

g105b avatar

Watchers

 avatar  avatar  avatar

Forkers

isabella232

installer's Issues

Install script requirements

  • Detect operating system
  • Check required software available: php, git, composer, docker
  • Prefer to do everything through docker if available, but give option to user
  • Add composer bin directory to PATH if not already
  • Global composer install

Use command -v whatever to detect if the whatever command is available.

Rename repo to CliTools

The installation script at php.gt/install can be hosted separately, but it doesn't make sense to name this repo "installer" when it has very little responsibility in the installation of anything.

Example usage

In some CLI-based repos, the examples/ directory is used to contain scripts to articulate the usage. Seeing as this repo is only calling CLI scripts and doesn't contain any unit tests, this would be really useful to see.

Something like 01-example-cron-build.bash:

cd /tmp
gt create example-new-project
cd example-new-project
gt cron
gt build

This would also act as a quality assurance layer, to actually ensure the scripts do what they expect.

Bash-based tests?

This repo isn't really unit test-able. There could be some bash-based tests that run the different commands and check for expected output. This would be easy to hook up with Github Actions too.

Single line, with progress

Current status is displayed in the last line of terminal output. Any important messages are put on lines above last line.

The progress bar is achieved by making the terminal background "negative" by flipping the foreground and background colours.

The same effect can be observed when performing snap install on Ubuntu.

gt add

When inside a webengine repo, it would be useful to have the command gt add to add template files of certain types.

For example:

gt add page about # creates page/about.html and page/about.php with minimal code
gt add api user/settings # creates api/user/settings.php with minimal code
gt add query select user/getById # creates query/user/getById.php as select query builder

Just an idea for now...

gt migrate

Rather than having to use the vendor approach.

"gt" as a php script in project directory

Rather than relying on composer's global installation, a script named gt can be placed in the project's root, so the developer can type php gt run or whatever they need.

This also further enforces the brand phpgt as that's exactly what they'll be typing each time.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.