Skip to content

roalcantara/floppy

Repository files navigation

floppy

Main Release Publish

A simple unity app

MIT license Contributor Covenant standard-readme compliant Editor Config Conventional Commits Semantic Release

Install

git clone https://github.com/roalcantara/floppy.git

TODO

  • Setup
    • Create Unity Project
    • Add Standard Readme
    • Setup Semantic Commits
    • Setup Pre-Commit Hooks
  • Unity Demo App
    • Add Simple Unity Game
    • Add Simple Unity PlayMode Tests
    • Add Simple Unity EditMode Tests
    • Configure WebGL Build
  • [-] CI/CD & DevOps
    • Add main workflow, for each PR
      • Test
      • Build
      • On Success Deploy Preview app
      • Notification
      • On close Shutdown Preview app
    • Add release workflow
      • On push to main
        • Build the app
        • Semantic Release the app
          • Create Github Release/Tag
          • Store the build
          • Send Notification
    • Add publish workflow
      • On release created
        • Download release build
        • Publish to Itch.io
        • Send Notification
  • [-] Dev Environment
    • Makefile
    • Handle Secrets
    • Local (MacOS)
      • Generate Manual Activation File
      • Build WebGL
      • Run WebGL from dist folder
      • Run Tests
        • All
        • EditMode
        • PlayMode
    • Docker
      • Generate Manual Activation File
      • Build WebGL
      • Run Tests
        • All
        • EditMode
        • PlayMode
    • Linter checks
    • Unity Accelerator
  • QA
    • Configure Gkerking/Cucumber
    • Add Relevant Unity Tests Scenarios
    • Add Test Coverage
    • Link Unity Tests to CI/CD
    • Link Issues to CI/CD

Dependencies

USAGE

Running Locally

  1. Run make activation_file to generate the activation file $(PWD)/scripts/support/Unity_v2021.1.7f1.local.alf
  2. Upload the activation file to https://license.unity3d.com/manual
  3. Download and save the license file at $(PWD)/scripts/support/Unity_v2021.1.7f1.local.ulf

Running on CI/CD (Activation)

  1. Execute the Job Activation
  2. Download the Manual Activation File
  3. Upload the activation file to https://license.unity3d.com/manual
  4. Download the license file
  5. Run cat Unity_v20XX.x.ulf | pbcopy to copy the file content
  6. Add a secret named UNITY_LICENSE with the content of the license file

Running in Docker

  1. Run make docker/activation_file to generate the activation file $(PWD)/scripts/support/Unity_v2021.1.7f1.docker.alf
  2. Upload the activation file to https://license.unity3d.com/manual
  3. Download and save the license file at $(PWD)/scripts/support/Unity_v2021.1.7f1.docker.ulf

Commands

Local (MacOS)

It requires $(PWD)/scripts/support/Unity_v2021.x.local.ulf See Manual license activation

## Generate Manual Activation File
make activation_file

## Activate the unity editor with license file
make activate

## Build the app for WebGL to dist folder
make build

## Run the app from dist folder
make run

## Run all tests
make test

## Run edit mode tests
make test/edit

## Run play mode tests
make test/play

Container (Docker)

It requires $(PWD)/scripts/support/Unity_v2021.x.docker.ulf See Manual license activation

## Generate Manual Activation File
make docker/activation_file

## Build the app for WebGL to dist folder
make docker/build

## Run all tests
make docker/test

## Run edit mode tests
make docker/test/edit

## Run play mode tests
make docker/test/play

Acknowledgments

Contributing

License

The project is available as open source under the terms of the MIT License