To build the image, you can run the following command:
make buildTo build and push the image to Docker Hub, you can enter each workspace or base folders and run:
make pushFor pushing all the images in a row, you can run in the root dir:
make push-allTo run the image, you can use the following command:
./runThe commands you might want to test expect to find the WordPress plugin code in the
/project directory. You can run the following command to clone a plugin repository
to the /project directory (Please, replace the repository URL with the one you want to test):
git clone https://github.com/publishpress/PublishPress-Future.git /projectYou can use the command plugin-dropbox (or pdropbox for backward compatibility, based on droxul) to upload built packages to Dropbox.
It requires create a Dropbox App and generate an access token. You can easily do this by
running plugin-dropbox (or pdropbox) the first time and following the instructions.
The uploaded files will be available in the folder you select when creatin the Dropbox App, which can be an Scoped App (App Folder).
In order to avoid having to generate a new access token every time you run the pdropbox command, you can
cache the access token in a file. The file will be created in the /root directory and will be named
.dropbox_uploader.
Make sure to include this file in the child dev-workspace image as a volume (compose.yaml), so the access token is
available in the next run.
If you want to unlink your Dropbox account, you can run plugin-dropbox unlink (or pdropbox unlink for backward compatibility).
You can find more information about the droxul command in the official repository.
The following commands are available in the image:
composer- PHP dependency managerwp- WordPress CLIplugin-build- Build the plugin package (main build command)plugin-name- Get the plugin name from composer.jsonplugin-slug- Get the plugin slug from composer.jsonplugin-folder- Get the plugin folder name from composer.jsonplugin-version- Get the plugin versionplugin-zipfile- Get the plugin zip file nameplugin-file- Get the plugin file pathplugin-dropbox- Dropbox uploader for plugin packagesplugin-tests- Run plugin testscheck-dependencies- Check dependencies between free and pro pluginsmerge-dependencies- Merge dependencies from free plugin into pro pluginparse-json- Parse JSON files and retrieve the value of a keyfind-long-paths- List the longest paths in the plugingithub-login- Set Github token and login user using Github CLIget-ip- Get the IP address of the host machineworkspace-version- Show the version of the dev-workspacetest-bootstrap- Bootstrap plugin files into test container volume
All old command names are still available in scripts/deprecated-scripts/ for backward compatibility:
pbuild,pname,pslug,pfolder,pversion,pzipfile,pfile,pdropboxcheckdep,mergedep,parsejson,longpath,ghlogin,getip,versionpptests,testsbootstrap
Note: While deprecated commands continue to work, new scripts should use the hyphenated command names above.
- bats - Testing framework for Bash scripts
- bet - "cat" command with syntax highlight ...
Run the following command inside the container.
bats /tests/test_longpath.batsThis project is licensed under the GNU GPL v3.0 License - see the LICENSE file for details.