Files
Actions/README.md
alberto 72fcf2f74f Aggiunge nuove azioni per il versionamento e il deploy
Sono state aggiunte azioni per estrarre la versione da un tag,
pubblicare un progetto .NET e distribuire su IIS.
Queste azioni semplificano il processo di build e deploy
per i progetti .NET, migliorando l'integrazione con Gitea Actions.
2026-05-14 21:31:39 +02:00

66 lines
1.6 KiB
Markdown

# Gitea Actions
Repository contenente action [Gitea Actions](https://docs.gitea.com/usage/actions/overview) centralizzate
utilizzabili da altri repository del workspace.
## Action disponibili
### `version-from-tag`
Estrae la versione da un tag (formato `v1.2.3.4[-suffix]`) e produce le variabili
`appver`, `fullver`, `suffix` e `version`.
```yaml
- name: Calcola versione
uses: https://<host>/<owner>/Actions/version-from-tag@<ref>
with:
ref-name: ${{ github.ref_name }}
```
### `publish-dotnet`
Compila (restore + publish) un progetto .NET e sincronizza l'output su un path
locale via `rsync`.
```yaml
- name: Publish
uses: https://<host>/<owner>/Actions/publish-dotnet@<ref>
with:
project: src/MyApp/MyApp.csproj
output-path: /var/publish/myapp
version: ${{ steps.versione.outputs.appver }}
# opzionali:
configuration: Release
subpath: "wwwroot"
exclude-dirs: store
exclude-files: appsettings.json
```
### `deploy-iis`
Esegue il deploy su IIS: ferma sito/application pool, copia i file via `robocopy`,
riavvia i servizi.
```yaml
- name: Deploy IIS
uses: https://<host>/<owner>/Actions/deploy-iis@<ref>
with:
source-path: /var/publish/myapp
destination-path: C:\inetpub\wwwroot\myapp
site-name: MySite
app-pool-name: MyAppPool
exclude-dirs: store
exclude-files: appsettings.json
```
## Versionamento delle action
Per puntare a una versione stabile, crea un tag su questo repository
(es. `v1.0.0`) e usalo nel riferimento:
```yaml
uses: https://<host>/<owner>/Actions/publish-dotnet@v1.0.0
```
Oppure punta a un branch (`@main`) per avere sempre l'ultima versione.