Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Simple Automated WordPress Deployment Tool with Wordmove

Posted on November 14, 2016

Deploying WordPress site from local server to upstream can be stressful. Especially when you’re battling with local article, specific permalink etc etc. Of course you can use Jenskins, Beanstalk, Deploy and any automation tool you like.

On this article we will focusing on simple yet powerful deployment tool, Wordmove. Wordmove is basically just a simple Ruby package that can help you fast and easy enough to deploy WordPress website. As declared in their Github Repo, Wordmove is just like a ‘Capistrano for WordPress‘.

Wordmove is supporting complete push and pull capabilities, for any aspect of your WordPress website like themes, plugin, upload, and even the database itself. To be more clear to you, if you familiar enough with Github, we can think of Wordmove as Git, and our remote WordPress server acting as our Github repo and our local WordPress installation as the local cloned fork of that repo.

Installing Wordmove

To using Wordmove you must have Ruby installed. For OS X user you can just skip this part and begin installing wordmove (OS X is already packaging Ruby as one of their native Library). For Windows/Linux user you can install Ruby first.

to install Wordmove, you can use gem command:

[sourcecode]gem install wordmove[/sourcecode]

and you also need ‘rsync’ if you using Wordmove with SSH Support and lftp if you choose to run Wordmove in FTP mode (both can easy enough to install with YUM/Apt-get or Brew).

Begining Journey with Wordmove

First step, we have to generate Movefile, a file that readed by Wordmove as their automation configuration for specific WordPress website. You can generate this file with:

[sourcecode]wordmove init[/sourcecode]

in your local WordPress directory.

A new file called ‘Movefile’ will be generated. Its just a simple YAML file, like this one:
[sourcecode]
local:
vhost: "http://vhost.local"
wordpress_path: "/home/john/sites/your_site" # use an absolute path here

database:
name: "database_name"
user: "user"
password: "password"
host: "127.0.0.1"

# paths: # you can customize wordpress internal paths
# wp_content: "wp-content"
# uploads: "wp-content/uploads"
# plugins: "wp-content/plugins"
# themes: "wp-content/themes"
# languages: "wp-content/languages"

production:
vhost: "http://mywordpressexample.com"
wordpress_path: "/var/www/mywordpressexample" # use an absolute path here

database:
name: "database_name"
user: "user"
password: "password"
host: "host"

exclude:
– ".git/"
– ".gitignore"
– "bin/"
– "tmp/*"
– "Gemfile*"
– "Movefile"
– "wp-config.php"
– "wp-content/*.sql"

ssh:
host: "host"
user: "user"
[/sourcecode]

Next step of course, you need to push those local installation to staging/production server. You just need to run this command:

[sourcecode]wordmove push –all[/sourcecode]

and some basic command like Pulling from remote is just simple as this command:

[sourcecode]wordmove pull -dbu[/sourcecode]

where -dbu stands for database and upload.

you can also specifically pushing specific folder like themes folder, upload folder, plugins folder or just push fresh database. Just use one of this options:

[sourcecode]
-t for themes,
-u for uploads/media,
-p for plugins,
-d for database
[/sourcecode]

to only push to specific environment (like staging or production server) you can use -e option.

[sourcecode]wordmove push -e staging -d[/sourcecode]

*) push database wordpress to staging environment

Reading source: Github

Terbaru

  • Kenapa Komputer Sangat Panas Saat Gunakan Fitur Virtualisasi Hyper-V?
  • Apa itu Bug React2Shell? Sudah Serang Lebih dari 30 Organisasi dan 77.000 IP Address
  • Google Store Black Friday 2025: Penawaran Spesial untuk Pixel, Nest, dan Lainnya!
  • Boxville 2 Gratis di Playstore, Plus Diskon Lainnya!
  • Cara Atasi Masalah Pembacaan Suara (Read Aloud) di Windows Copilot Tidak Berfungsi
  • Kementerian Kesehatan Inggris Akui Data Breach, Akibat Zero-day Oracle DB?
  • Google Akan Perkenalkan Autofill Google Wallet di Chrome untuk Pembayaran Lebih Mudah
  • Google Pixel Akan Perkenalkan Launcher Device Search Baru, Lebih Cepat dan Pintar
  • Hacker Serang Bug VPN di ArrayOS AG untuk Menanam Web Shell
  • Cara Menonaktifkan Error “ITS Almost time to restart in Windows”
  • Google Fi Mendukung Panggilan Telepon RCS Melalui Web, Lebih Mudah dan Efisien
  • Data Breach Marquis: Hajar Lebih Dari 74 Bank dan Koperasi AS
  • Google Search Akan Adopsi ‘Continuous Circle’ untuk Hasil Pencarian Terjemahan, Lebih Cerdas dan Kontekstual
  • Rusia Memblokir Roblox Karena Distribusi ‘Propaganda LGBT’
  • Google Gemini Redesain Web Total di Desember 2025, Fokus UX yang Lebih Baik
  • Apa itu Google Workspace Studio? Tool Baru untuk Pembuat Konten?
  • Cara Menggunakan Xbox Full-Screen Experience di Windows
  • Korea Tahan Tersangka Terkait Penjualan Video Intim dari Kamera CCTV yang Diretas
  • Kebocoran Galaxy Buds 4 Mengungkap Desain dan Fitur Baru, Mirip Apple?
  • Sudah Update Windows KB5070311 dan Apa Saja Yang Diperbaiki?
  • Cara Menonaktifkan Fitur AI Actions (Tindakan AI) di Menu Windows Explorer
  • Microsoft Edge AI vs. OpenAI’s Atlas Browser: Perbandingan dan Perbedaan Utama
  • Cara Memasang Folder Sebagai Drive di Windows 11
  • Cara Memperbaiki Error 0xC1900101 0x40021 pada Update Windows 11
  • Malware Glassworm Serang Lagi VSCode, Hati-hati!
  • Walmart dan Google Bermitra untuk Kamera Rumah Google Home: Pengalaman Langsung
  • Gemini Dapat Bisa Atur Perangkat Rumah Melalui Home Assistant Pakai Suara, Desember 2025
  • Asahi, Produsen Bir Jepang, Akui Kebocoran Data 15 Juta Pelanggan
  • Google Messages Ada Fitur Baru: Pesan Grup, Mode Gelap dan Integrasi dengan Google Duo
  • 5 Laptop ASUS Terbaik dengan Tampilan Mewah dan Build Quality Premium
  • Kenapa Komputer Sangat Panas Saat Gunakan Fitur Virtualisasi Hyper-V?
  • Apa itu Bug React2Shell? Sudah Serang Lebih dari 30 Organisasi dan 77.000 IP Address
  • Google Store Black Friday 2025: Penawaran Spesial untuk Pixel, Nest, dan Lainnya!

©2025 emka.web.id | Design: Newspaperly WordPress Theme