Giter VIP home page Giter VIP logo

gitpod-tool's People

Contributors

derroylo avatar janspeller avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

janspeller

gitpod-tool's Issues

Disable support for custom docker-compose while using still 0.4.1

If the version under /home/gitpod/.gpt is still 0.4.1 then gpt services start will not work due to an error in that version. Disable custom docker-compose files and show an info

Edit: GPT will copy the file gpt.sh to the folder /home/gitpod/.gpt/ to prevent future problems with changes in that file as the one in the home folder might be from an older version. This will also "fix" the problem with custom docker-compose files.

Option for custom docker-compose file

Add Option to specify docker-compose file location.
Example:

  • A Project already has a docker-compose.yml for local development
  • Gitpod services could be specified in gitpod-compose.yml
  • Argument Proposal: -f Example: gpt services start -f gitpod-compose.yml

Update Readme

Remove Todo list as these can now be found under Issues
Add an Info on how to update to 0.4 from 0.3

Check if all php packages are installed when switching php version

When switching to an older version of php it can happen that not all packages have been installed that have been defined in the dockerfile as these are mostly only installed in the most recent version of php. So make sure that when switching to an older version that these packages are also installed.

Extend the ability of gitpod regarding env variables and files

Gitpod has some basic support for env variables and files. These functions should be extended with the following functions:

Suggested syntax for .gpt.yml:

env:
  vars:
    test: Testvalue
  files:
    auth.json: GPT_AUTH_JSON

Cleanup/Refactoring

Cleanup and Refactor the project as for example some helper classes got messy and not really readable.

Restart apache after package restore

After package restore the webserver should be restarted otherwise some package will not be loaded directly and the user needs to restart it manually

Fix an issue in the Update script

The update script checks the wrong location for the update folder, so gpt downloads the update but it will not be applied.

# Check if the update folder exists
if [ -d "update" ]; then
    cd $GPTDIR

    # Move all files from the update folder to the current one and remove it afterwards
    mv update/* .

    # Remove the update folder
    rm -rf update

    # Set execution rights for the shell script
    chmod +x gpt.sh
fi

but it should be

# Check if the update folder exists
if [ -d "$GPTDIR/update" ]; then
    cd $GPTDIR

    # Move all files from the update folder to the current one and remove it afterwards
    mv update/* .

    # Remove the update folder
    rm -rf update

    # Set execution rights for the shell script
    chmod +x gpt.sh
fi

Rewrite the internal config writer

The currently used yaml config writer has a few disadvantages for example that he reformats the gpt.yml completly which removes any comments etc. This should be fixed

Documentation for xdebug

Update the documentation for xdebug and add screenshots etc. on how to setup xdebug for vscode and phpstorm. Also infos about profiling etc.

PhpStorm shared indexes

Alot of time goes into building the indexes during prebuilds, PHPStorm allows the usage of shared indexes, which would speed up that process. Test if there is a way to import/export these shared indexes to speed up the needed prebuild times.

Init command

Describe the feature you would like to have been added

Add an init command that creates all necessary files so the current repo can be started via gitpod

Related issues

No response

Anything else?

No response

Automatic Testing

As every good project, this one should also have automatic testing implemented.

Check for overrides when changing php settings

Using this config as a base:

php:
  version: 8.0
  config:
    opcache.enable: off
    xdebug.mode: off
    xdebug.start_with_request: yes
  configWeb:
    memory_limit: 512M
    xdebug.mode: off
  configCLI:
    max_execution_time: 0
    xdebug.mode: off

When trying to change the setting for max_execution_time for both cli and web, the setting will be added to config but will not change the value for configCLI. If i want to change a setting globally and there is an override in Web or CLI, then the tool should inform the user about this and aks if the override should be removed.

Add PECL as package installation source

While using apt-get install for php packages might work for most of the packages, there might be cases where we need to use pecl as installation source.

Use pickle as installation method as that can be used in non-interactive mode and is a better method overall. Make also sure that the pickle is installed and add it to the sample workspaces

Add php modules via command

Currently php modules can only be added manually or via the gpt.yml. A new command should be added so that php modules can be added or removed.

Add Database functions

Extend gpt with the following database functions:

  • Import/Export the database from/to a file
  • Update the database image via command
  • Create/Restore database snapshots

PECL Error

WARNING: channel "pecl.php.net" has updated its protocols, use "pecl channel-update pecl.php.net" to update
Cannot install, php_dir for channel "pecl.php.net" is not writeable by the current user

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.