|
2 | 2 |
|
3 | 3 | ## Release Workflow |
4 | 4 |
|
5 | | -Der Release-Workflow wird automatisch ausgelöst, wenn ein neuer Tag (z.B. `v1.2.0`) gepusht wird. |
| 5 | +The release workflow is automatically triggered when a new tag (e.g., `v1.2.0`) is pushed. |
6 | 6 |
|
7 | | -### Automatisierte Schritte: |
| 7 | +### Automated Steps: |
8 | 8 |
|
9 | | -1. **Build für beide Architekturen** (ARM64 und x86_64) |
10 | | -2. **Erstellen von Release-Archives** (.tar.gz) |
11 | | -3. **Berechnen der SHA256-Checksums** |
12 | | -4. **Upload der Release-Assets zu GitHub** |
13 | | -5. **Automatisches Update der Homebrew Formula** |
| 9 | +1. **Build for both architectures** (ARM64 and x86_64) |
| 10 | +2. **Create release archives** (.tar.gz) |
| 11 | +3. **Calculate SHA256 checksums** |
| 12 | +4. **Upload release assets to GitHub** |
| 13 | +5. **Automatically update Homebrew Formula** |
14 | 14 |
|
15 | | -### Erforderliches Secret einrichten: |
| 15 | +### Required Secret Setup: |
16 | 16 |
|
17 | | -Um die Homebrew Formula automatisch zu aktualisieren, muss ein GitHub Token erstellt werden: |
| 17 | +To automatically update the Homebrew Formula, a GitHub Token needs to be created: |
18 | 18 |
|
19 | | -#### 1. Personal Access Token erstellen: |
| 19 | +#### 1. Create Personal Access Token: |
20 | 20 |
|
21 | | -1. Gehe zu: https://github.com/settings/tokens |
22 | | -2. Klicke auf "Generate new token" → "Generate new token (classic)" |
| 21 | +1. Go to: https://github.com/settings/tokens |
| 22 | +2. Click "Generate new token" → "Generate new token (classic)" |
23 | 23 | 3. Name: `Homebrew Tap Update` |
24 | | -4. Setze folgende Berechtigungen: |
| 24 | +4. Set the following permissions: |
25 | 25 | - ✅ `repo` (Full control of private repositories) |
26 | | -5. Klicke auf "Generate token" |
27 | | -6. **Kopiere den Token** (wird nur einmal angezeigt!) |
| 26 | +5. Click "Generate token" |
| 27 | +6. **Copy the token** (shown only once!) |
28 | 28 |
|
29 | | -#### 2. Secret im tide Repository hinzufügen: |
| 29 | +#### 2. Add secret to the tide repository: |
30 | 30 |
|
31 | | -1. Gehe zu: https://github.com/BreathCodeFlow/tide/settings/secrets/actions |
32 | | -2. Klicke auf "New repository secret" |
| 31 | +1. Go to: https://github.com/BreathCodeFlow/tide/settings/secrets/actions |
| 32 | +2. Click "New repository secret" |
33 | 33 | 3. Name: `HOMEBREW_TAP_TOKEN` |
34 | | -4. Value: [Den kopierten Token einfügen] |
35 | | -5. Klicke auf "Add secret" |
| 34 | +4. Value: [Paste the copied token] |
| 35 | +5. Click "Add secret" |
36 | 36 |
|
37 | | -### Neues Release erstellen: |
| 37 | +### Create a new release: |
38 | 38 |
|
39 | 39 | ```bash |
40 | | -# 1. Version in Cargo.toml aktualisieren |
41 | | -# 2. Änderungen committen |
| 40 | +# 1. Update version in Cargo.toml |
| 41 | +# 2. Commit changes |
42 | 42 | git add Cargo.toml |
43 | 43 | git commit -m "chore: bump version to 1.3.0" |
44 | 44 |
|
45 | | -# 3. Tag erstellen |
| 45 | +# 3. Create tag |
46 | 46 | git tag -a v1.3.0 -m "Release v1.3.0 |
47 | 47 |
|
48 | 48 | - Feature 1 |
49 | 49 | - Feature 2 |
50 | 50 | - Fix 1 |
51 | 51 | " |
52 | 52 |
|
53 | | -# 4. Tag pushen (triggert automatisch den Release-Workflow) |
| 53 | +# 4. Push tag (automatically triggers the release workflow) |
54 | 54 | git push && git push --tags |
55 | 55 | ``` |
56 | 56 |
|
57 | | -### Was passiert automatisch: |
| 57 | +### What happens automatically: |
58 | 58 |
|
59 | | -1. GitHub Actions baut die Binaries für beide Architekturen |
60 | | -2. Erstellt Release-Archives und berechnet SHA256-Checksums |
61 | | -3. Lädt alles als GitHub Release hoch |
62 | | -4. Klont das homebrew-tap Repository |
63 | | -5. Aktualisiert die Formula mit neuer Version und SHA256-Checksums |
64 | | -6. Committed und pusht die Änderungen ins homebrew-tap Repository |
| 59 | +1. GitHub Actions builds binaries for both architectures |
| 60 | +2. Creates release archives and calculates SHA256 checksums |
| 61 | +3. Uploads everything as a GitHub Release |
| 62 | +4. Clones the homebrew-tap repository |
| 63 | +5. Updates the Formula with the new version and SHA256 checksums |
| 64 | +6. Commits and pushes the changes to the homebrew-tap repository |
65 | 65 |
|
66 | | -### Manueller Fallback: |
| 66 | +### Manual Fallback: |
67 | 67 |
|
68 | | -Falls die automatische Aktualisierung fehlschlägt, kann die Homebrew Formula manuell aktualisiert werden: |
| 68 | +If the automatic update fails, the Homebrew Formula can be updated manually: |
69 | 69 |
|
70 | 70 | ```bash |
71 | | -# SHA256 aus Release-Assets abrufen |
| 71 | +# Get SHA256 from release assets |
72 | 72 | curl -L -o tide-aarch64.tar.gz https://github.com/BreathCodeFlow/tide/releases/download/v1.2.0/tide-aarch64-apple-darwin.tar.gz |
73 | 73 | curl -L -o tide-x86_64.tar.gz https://github.com/BreathCodeFlow/tide/releases/download/v1.2.0/tide-x86_64-apple-darwin.tar.gz |
74 | 74 |
|
75 | 75 | shasum -a 256 tide-aarch64.tar.gz |
76 | 76 | shasum -a 256 tide-x86_64.tar.gz |
77 | 77 |
|
78 | | -# homebrew-tap klonen und Formula aktualisieren |
| 78 | +# Clone homebrew-tap and update formula |
79 | 79 | git clone https://github.com/BreathCodeFlow/homebrew-tap.git |
80 | 80 | cd homebrew-tap |
81 | | -# Formula/tide.rb bearbeiten |
| 81 | +# Edit Formula/tide.rb |
82 | 82 | git add Formula/tide.rb |
83 | 83 | git commit -m "chore: update tide formula to v1.2.0" |
84 | 84 | git push |
|
0 commit comments