{"id":22746290,"url":"https://github.com/yukihiko-shinoda/dockerfile-deploy-wordpress-plugin","last_synced_at":"2026-04-20T09:32:49.473Z","repository":{"id":37025469,"uuid":"225111852","full_name":"yukihiko-shinoda/dockerfile-deploy-wordpress-plugin","owner":"yukihiko-shinoda","description":"Dockerfile for deploy WordPress plugin from Git repository.","archived":false,"fork":false,"pushed_at":"2025-11-01T14:08:35.000Z","size":253,"stargazers_count":0,"open_issues_count":3,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-11-01T14:27:11.917Z","etag":null,"topics":["ansible","deploy","deployment","deployment-automation","docker","dockerfile","wordpress-plugin","wp-plugin"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/yukihiko-shinoda.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-12-01T05:33:48.000Z","updated_at":"2025-11-01T14:08:33.000Z","dependencies_parsed_at":"2023-02-14T02:46:02.605Z","dependency_job_id":null,"html_url":"https://github.com/yukihiko-shinoda/dockerfile-deploy-wordpress-plugin","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/yukihiko-shinoda/dockerfile-deploy-wordpress-plugin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yukihiko-shinoda%2Fdockerfile-deploy-wordpress-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yukihiko-shinoda%2Fdockerfile-deploy-wordpress-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yukihiko-shinoda%2Fdockerfile-deploy-wordpress-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yukihiko-shinoda%2Fdockerfile-deploy-wordpress-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yukihiko-shinoda","download_url":"https://codeload.github.com/yukihiko-shinoda/dockerfile-deploy-wordpress-plugin/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yukihiko-shinoda%2Fdockerfile-deploy-wordpress-plugin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32041371,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-20T00:18:06.643Z","status":"online","status_checked_at":"2026-04-20T02:00:06.527Z","response_time":94,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible","deploy","deployment","deployment-automation","docker","dockerfile","wordpress-plugin","wp-plugin"],"created_at":"2024-12-11T02:12:42.227Z","updated_at":"2026-04-20T09:32:49.457Z","avatar_url":"https://github.com/yukihiko-shinoda.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- markdownlint-disable first-line-h1 --\u003e\n[![Test](https://github.com/yukihiko-shinoda/dockerfile-deploy-wordpress-plugin/actions/workflows/test.yml/badge.svg)](https://github.com/yukihiko-shinoda/dockerfile-deploy-wordpress-plugin/actions/workflows/test.yml)\n[![Docker Cloud Automated build](https://img.shields.io/docker/cloud/automated/futureys/deploy-wordpress-plugin.svg)](https://hub.docker.com/r/futureys/deploy-wordpress-plugin/builds)\n[![Docker Cloud Build Status](https://img.shields.io/docker/cloud/build/futureys/deploy-wordpress-plugin.svg)](https://hub.docker.com/r/futureys/deploy-wordpress-plugin/builds)\n[![Docker Image Size (latest semver)](https://img.shields.io/docker/image-size/futureys/deploy-wordpress-plugin)](https://hub.docker.com/r/futureys/deploy-wordpress-plugin/dockerfile)\n\n# Quick reference\n\n- **operating procedure**:\n\n  [Using Subversion | Plugin Developer Handbook | WordPress Developer Resources](https://developer.wordpress.org/plugins/wordpress-org/how-to-use-subversion/)\n\n- **Reference materials**:\n\n  [Plugin Readmes | Plugin Developer Handbook | WordPress Developer Resources](https://developer.wordpress.org/plugins/wordpress-org/how-your-readme-txt-works/#how-the-readme-is-parsed)\n\n  [The Plugins directory and readme.txt files – Make WordPress Plugins](https://make.wordpress.org/plugins/2012/06/09/the-plugins-directory-and-readme-txt-files/)\n\n\u003c!-- markdownlint-disable no-trailing-punctuation --\u003e\n# What is Deploy WordPress Plugin?\n\u003c!-- markdownlint-enable no-trailing-punctuation --\u003e\n\nThis is deployment job for WordPress Plugin\nfrom public Git repository to SubVersion on WordPress.org.\n\n## requirement\n\n- Tagging revision on Git is done before deploy into WordPress.org\n- Tag name of revision on source Git repository to deploy is the same as version number of plugin’s main PHP file on tagged revision of source Git repository\n\n## out of scope\n\n- Deploying old version than latest version\n- [Deploying Assets](https://developer.wordpress.org/plugins/wordpress-org/plugin-assets/)\n  (Even if Git repository includes assets, this project will deploy\n   the revision content as it is under trunk and tags\n   of SubVersion repository on WordPress.org.)\n\n## excluding strategy\n\nThe process executes rsync from Git working tree to SubVersion working tree with ```.rsync-filter```.\n\n### default behavior\n\nrsync will read [default .rsync-filter file](https://github.com/yukihiko-shinoda/dockerfile-deploy-wordpress-plugin/blob/master/runner/project/roles/deploy-wordpress-plugin/templates/.rsync-filter.j2).\n\n### customizing behavior\n\nIf ```.rsync-filter``` file is exist on the root of Git working tree, rsync will read it. The most primitive how to write it is to list up files and directories you want to exclude. For more details, following contents will be helpful.\n\n- [linux - Using Rsync filter to include/exclude files - Stack Overflow](https://stackoverflow.com/questions/35364075/using-rsync-filter-to-include-exclude-files)\n- [rsync(1) - Linux man page](https://linux.die.net/man/1/rsync)\n\n# How to use this image\n\nThis image is depend on [futureys/ansible-workspace-deploy-wordpress-plugin](https://hub.docker.com/r/futureys/ansible-workspace-deploy-wordpress-plugin).\nIt will be easier to understand\nif you look at the Docker Compose files in the GitHub code.\n\n\u003chttps://github.com/yukihiko-shinoda/dockerfile-deploy-wordpress-plugin\u003e\n\n## ... via docker-compose\n\n### 1. Download project files\n\nClone or download project files from GitHub.\n\n```shell script\ngit clone https://github.com/yukihiko-shinoda/dockerfile-deploy-wordpress-plugin.git\n```\n\n### 2. Set environment variable\n\nIf you prefer, there is template to set environment variables,\nCopy .env.dist to .env, then open by editor and edit variable definitions.\n\nref: [Environment variables in Compose | Docker Documentation](https://docs.docker.com/compose/environment-variables/#the-env-file)\n\n### 3. Dry run\n\nBy running SubVersion container for mock in local.\nEnter following command:\n\n```shell script\ndocker-compose -f docker-compose.yml -f docker-compose.staging.yml up -d \u0026\u0026 docker logs -f deploy\n```\n\n### 4. Check dry run result\n\nWhen process succeed to finish, check result by checking out from mock:\n\n```shell script\nsvn checkout svn://(your-docker-host-name)/project-in-svn\ncd project-in-svn\nsvn log HEAD:1\n```\n\n### 5. Shutdown containers once\n\nOnce you have checked that it works as expected, shutdown containers once.\n\n```shell script\ndocker-compose -f docker-compose.yml -f docker-compose.staging.yml down\n```\n\n### 6. Run as production\n\n```shell script\ndocker-compose -f docker-compose.yml up\n```\n\n### 7. Check on WordPress.org\n\nCheck on WordPress.org that it has been deployed successfully.\n\n[WordPress Plugins | WordPress.org](https://wordpress.org/plugins/)\n\n### 8. Shutdown containers\n\nAfter checking that the deployment was succeed, shutdown the container.\n\n```shell script\ndocker-compose -f docker-compose.yml down\n```\n\n## Environment Variables\n\n### ```GIT_REPOSITORY_URL```\n\nThe source Git repository URL for public repository.\nOnly either of ```GIT_REPOSITORY_URL``` or ```GIT_PATH_CHECKED_OUT``` can define.\n\n### ```GIT_PATH_CHECKED_OUT```\n\nThe source GIT_PATH_CHECKED_OUT.\nThis is intended to mount the directory where checked out the private repository.\nOnly either of ```GIT_REPOSITORY_URL``` or ```GIT_PATH_CHECKED_OUT``` can define.\n\n### ```SVN_REPOSITORY_URL```\n\nThe destination SubVersion repository URL.\n\nEx: ```https://plugins.svn.wordpress.org/????```\n\n### ```SVN_USER_NAME```\n\nUser name of SubVersion on WordPress.org.\n\n\u003e Your account for SVN will be the same username (not the email) of\n\u003e the account you used when you submitted the plugin.\n\u003e This is the user ID you use for the WordPress forums as well.\n\n### ```SVN_USER_PASSWORD```\n\nUser password of SubVersion on WordPress.org.\n\n\u003e If you need to reset your password, go to [login.wordpress.org](https://login.wordpress.org/)\n\n### ```DEPLOY_VERSION```\n\nThe tag name of revision on source Git repository to deploy.\nThis string also has to be the same as the version number of\nplugin’s main PHP file on tagged revision of source Git repository.\n\n### ```SHOW_ALL_LOG```\n\nBy default, this image hide logs about steps using secret for example when commit.\nWhen debug, you can check log by setting this ```true```.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyukihiko-shinoda%2Fdockerfile-deploy-wordpress-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyukihiko-shinoda%2Fdockerfile-deploy-wordpress-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyukihiko-shinoda%2Fdockerfile-deploy-wordpress-plugin/lists"}