Skip to content
This repository has been archived by the owner on Apr 30, 2024. It is now read-only.

coffeebeats/gdbuild

Repository files navigation

gdbuild GitHub release (with filter) GitHub Build Status codecov

A single-purpose, CI-friendly command-line interface for managing Godot editor versions. Inspired by pyenv, rbenv, and volta.

⚠️ WARNING: This project is in a very early stage. API instability, missing features, and bugs are to be expected for now.

How it works

TODO

Getting started

These instructions will help you install gdbuild and pin projects (or your system) to specific versions of Godot.

Example usage

TODO

Installation

See docs/installation.md for detailed instructions on how to download gdbuild.

API Reference

Commands

See docs/commands.md for a detailed reference on how to use each command.

Compile Godot template

  • templategdbuild template [OPTIONS] <PLATFORM>

Export Godot project

  • projectgdbuild project [OPTIONS] <PRESET>

Development

Setup

The following instructions outline how to get the project set up for local development:

  1. Follow the instructions to install Go (see go.mod for the minimum required version).
  2. Clone the coffeebeats/gdbuild repository.
  3. Install the tools used below by following each of their specific installation instructions.

Code submission

When submitting code for review, ensure the following requirements are met:

NOTE: These instructions do not persist the tools to your development environment. When regular use is required, follow each tool's individual instructions to install permanent versions.

  1. The project is correctly formatted using goimports:

    go run golang.org/x/tools/cmd/goimports@latest -w .
  2. All golangci-lint linter warnings are addressed:

    go run github.com/golangci/golangci-lint/cmd/golangci-lint@latest run ./...
  3. All unit tests pass and no data races are found:

    go test -race ./...
  4. The gdbuild binary successfully compiles with goreleaser (release artifacts will be available at ./dist):

    go run github.com/goreleaser/goreleaser@latest release --clean --skip=publish --snapshot

Contributing

All contributions are welcome! Feel free to file bugs and feature requests and/or open pull requests.

Version history

See CHANGELOG.md.

License

MIT License

About

A small CLI application for compiling Godot and exporting projects.

Resources

License

Stars

Watchers

Forks

Packages

No packages published