Artefakt Unity
Prenosná distribúcia zdrojových kódov Unity (ThrowTheSwitch/Unity), odľahčeného frameworku na unit testy v C určeného pre embedded ciele. Tento repozitár využíva Embedbits Platform Artifact Handler na vyhľadanie, stiahnutie, overenie a konfiguráciu Unity v následných embedded projektoch — typicky spolu s artefaktom CMock (generovanie mockov) a artefaktom Ruby (interpreter pre generátorové skripty CMock / Unity).
Tento repozitár je rozdelený do troch vetiev/referencií podľa úlohy — vetva main (master), ktorú práve čítate, obsahuje iba túto dokumentáciu; skripty handlera sú vo vetve Core a verzované balíky so zdrojovými kódmi sa publikujú ako GitHub Releases ukotvené vo vetve Bin.
Obsah repozitára
main / master
└── README.md ← This document — no other content
Core
├── ArtifactConfig.cmake ← Artifact metadata (name, version constraints, asset naming)
└── CMakeUnityDefaults.cmake ← Unity integration logic (library target / include setup)
Bin (anchor branch — no tracked binary files)
└── (empty commits only; each release tag points here)
Úloha v platforme
GitHub (ThrowTheSwitch) GitHub (Embedbits)
────────────────────────────────────── ──────────────────────────────────────────
ThrowTheSwitch/Unity Artifact-unity
tag "v2.6.1" (source) ──► main / master → README only (this document)
Core → ArtifactConfig.cmake, CMakeUnityDefaults.cmake
Bin → Anchor branch (empty commits)
Releases → unity-<version>.zip + .hash
tagged Bin/<version>
Unity_Importer.sh naklonuje upstream repozitár pri každej značke vydania (vX.Y.Z, release candidate verzie sa ignorujú), overí checkoutnutú značku, odstráni metadáta .git, pridá textový súbor VERSION a zazipuje strom so zdrojovými kódmi. Unity je prenosný zdrojový kód v C kompilovaný priamo do testovacieho projektu, takže vydania nemajú príponu platformy — sú označené jednoducho Bin/<version> (predpona v sa vynecháva).
Štruktúra vetiev
| Vetva / referencia | Obsah |
|---|---|
main / master | Iba toto README — žiadny funkčný obsah |
Core | Skripty handlera CMake na použitie artefaktu |
Bin | Iba kotviaca vetva — nie sú v nej commitnuté žiadne binárky |
Značka vydania Bin/<version> | GitHub Release so zdrojovým balíkom .zip a jeho súborom s kontrolným súčtom .hash |
Poznámka: Na Git hostingu bez Releases API (Azure DevOps) ten istý importér commitne
.zip+.hashpriamo do vetvyBina tento commit označí značkouBin/<version>. Handler CMake transparentne spracuje obe formy.
Stiahnutie vydania
# Core handler scripts
git clone --branch Core --single-branch --depth=1 <repository_url> unity-core
# Source package + checksum for one specific version (GitHub Release asset)
gh release download Bin/2.6.1 --repo Embedbits/Artifact-unity --pattern "unity-2.6.1.*"
Štruktúra balíka
unity-<version>.zip
└── unity/
├── VERSION ← plain-text version, e.g. "2.6.1"
├── src/ ← unity.c, unity.h, unity_internals.h
├── extras/ ← optional add-ons (fixture, memory, bdd)
├── auto/ ← Ruby helper scripts (test runner generator, ...)
└── ... ← upstream docs, examples, build files
Skripty v Ruby v adresári auto/ (napr. generate_test_runner.rb) vyžadujú interpreter Ruby — použite artefakt Ruby.
Verzovanie
Verzie artefaktu zodpovedajú priamo oficiálnym značkám vydaní Unity bez predpony v:
2.5.2, 2.6.0, 2.6.1, 2.7.0, ...
Licencia
Unity sa distribuuje pod licenciou MIT. Podrobnosti nájdete na: https://github.com/ThrowTheSwitch/Unity/blob/master/LICENSE.txt
Autori
- Mr.Nobody — embedbits.com
Príspevky sú vítané! Otvorte prosím pull request.