Skip to content

immarktube/dockyard-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📦 Dockyard CLI

Dockyard CLI is a command-line tool built in Go to simplify and automate project build, deployment, and task execution. It helps you manage configurations across hundreds of repositories, saving you significant time and effort.

🔗 Project Homepage: immarktube.github.io/dockyard-cli


🚀 Features

  • Modular Command Structure: Organized via the cmd/ directory for easy extension and maintenance.
  • Configuration-Driven: Supports .dockyard.yaml for defining custom build and deployment pipelines.
  • Automated Task Execution: Built-in task runner for handling common project workflows.
  • CI/CD Friendly: Easily integrates into your existing automation pipelines.

🛠️ Installation & Usage

Installation

Download the latest release from below link and place the executable alongside your local repositories:
https://github.com/immarktube/dockyard-cli/releases

/your-workspace/
├── dockyard-cli         # Dockyard CLI executable file
├── .dockyard.yaml       # Dockyard config file
├── kubernetesDemo       # example repository 1
├── careeranalyse-web    # example repository 2
├── readList             # example repository 3
└── ...                  # other repositories

Usage

  1. Create a .dockyard.yaml file at your project root to define tasks.
  2. Run your tasks using:
dockyard --help

For detailed usage instructions, visit: Dockyard CLI Documentation


📁 Project Structure

dockyard-cli/
├── cmd/             # Command definitions
├── command/         # Command implementations
├── config/          # Configuration parsing
├── docs/            # Documentation
├── executor/        # Task runner
├── utils/           # Utility functions
├── .env             # Example config file
├── main.go          # Entry point
└── build.sh         # Build script

📄 Example .dockyard.yaml

global:
  owner: immarktube
  authToken: ${GITHUB_TOKEN}
  apiBaseURL: https://api.github.com
  gitBaseURL: https://github.com
  concurrency: 5
  noHook: true

repositories:
  - path: kubernetesDemo
    baseRef: fb6512a5b8a5b763e0b2e8634bad4cd713239c48
  - path: careeranalyse-web
    baseRef: 1.0.0
  - path: readList
    baseRef: master

hook:
  pre: echo "Running pre hook"
  post: echo "Running post hook"

📄 Example .env

GITHUB_TOKEN=ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Note: you can also define the token in .dockyard.yaml, but this will appear your sensitive data in config file directly.


🤝 Contributing

We welcome contributions, issue reports, and suggestions!

  1. Fork this repository.
  2. Create a new feature branch.
  3. Submit a Pull Request.

📄 License

This project is licensed under the MIT License. See the LICENSE file for details.

About

Please access dockyard guide to find more information.

Resources

License

Stars

1 star

Watchers

1 watching

Forks

Packages

 
 
 

Contributors