initial: nsAdvsplash plugin 1.0.0
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
name: Bug Report
|
||||
description: Segnala un bug riproducibile
|
||||
title: "[Bug]: "
|
||||
labels: ["bug", "triage"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Grazie per la segnalazione. Compila i campi sotto per aiutarci a riprodurre il problema.
|
||||
|
||||
- type: input
|
||||
id: plugin-version
|
||||
attributes:
|
||||
label: Versione plugin
|
||||
description: Contenuto del file VERSION o tag della release scaricata
|
||||
placeholder: "1.6.0"
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: dropdown
|
||||
id: architecture
|
||||
attributes:
|
||||
label: Architettura DLL usata
|
||||
options:
|
||||
- x86-ansi
|
||||
- x86-unicode
|
||||
- amd64-unicode
|
||||
- non so / multiple
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: input
|
||||
id: nsis-version
|
||||
attributes:
|
||||
label: Versione NSIS
|
||||
placeholder: "3.10"
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: input
|
||||
id: os
|
||||
attributes:
|
||||
label: Sistema operativo
|
||||
placeholder: "Windows 11 23H2 x64"
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: repro
|
||||
attributes:
|
||||
label: Passi per riprodurre
|
||||
description: Script .nsi minimale che riproduce il problema
|
||||
render: nsis
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: expected
|
||||
attributes:
|
||||
label: Comportamento atteso
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: actual
|
||||
attributes:
|
||||
label: Comportamento osservato
|
||||
description: Includi messaggi di errore esatti, output del log NSIS, screenshot
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: additional
|
||||
attributes:
|
||||
label: Note aggiuntive
|
||||
description: Qualunque altra informazione utile (workaround tentati, ecc.)
|
||||
@@ -0,0 +1,8 @@
|
||||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: Domande generali
|
||||
url: https://gitea.emulab.it/Simone/nsis-plugin-nsadvsplash/issues?type=question
|
||||
about: Per domande di utilizzo che non sono bug, apri una issue con label "question"
|
||||
- name: Security
|
||||
url: https://gitea.emulab.it/Simone/nsis-plugin-nsadvsplash/security/advisories/new
|
||||
about: Segnala vulnerabilità di security in privato (non aprire issue pubbliche)
|
||||
@@ -0,0 +1,32 @@
|
||||
name: Feature Request
|
||||
description: Suggerisci una nuova funzionalità o miglioramento
|
||||
title: "[Feature]: "
|
||||
labels: ["enhancement"]
|
||||
body:
|
||||
- type: textarea
|
||||
id: problem
|
||||
attributes:
|
||||
label: Problema / Caso d'uso
|
||||
description: Quale problema vorresti risolvere? Quale workflow vuoi abilitare?
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: proposal
|
||||
attributes:
|
||||
label: Proposta
|
||||
description: Come dovrebbe funzionare? Includi esempio di API/uso negli script NSIS se possibile.
|
||||
render: nsis
|
||||
validations:
|
||||
required: true
|
||||
|
||||
- type: textarea
|
||||
id: alternatives
|
||||
attributes:
|
||||
label: Alternative considerate
|
||||
description: Altri approcci che hai valutato e perché sono stati scartati
|
||||
|
||||
- type: textarea
|
||||
id: additional
|
||||
attributes:
|
||||
label: Note aggiuntive
|
||||
@@ -0,0 +1,31 @@
|
||||
## Descrizione
|
||||
|
||||
<!-- Descrivi cosa cambia questa PR e perché. Riferisci issue se applicabile (Closes #XXX). -->
|
||||
|
||||
## Tipo di Modifica
|
||||
|
||||
- [ ] Bug fix (modifica non breaking che risolve un problema)
|
||||
- [ ] Feature (modifica non breaking che aggiunge funzionalità)
|
||||
- [ ] Breaking change (fix o feature che rompe la compatibilità)
|
||||
- [ ] Documentazione
|
||||
- [ ] Build / CI
|
||||
|
||||
## Architetture Testate
|
||||
|
||||
- [ ] `x86-ansi`
|
||||
- [ ] `x86-unicode`
|
||||
- [ ] `amd64-unicode`
|
||||
|
||||
## Checklist
|
||||
|
||||
- [ ] Build completa senza warning: `python build_plugin.py`
|
||||
- [ ] CHANGELOG.md aggiornato (sezione `[Unreleased]`)
|
||||
- [ ] README / docs aggiornati se l'API è cambiata
|
||||
- [ ] Esempi aggiornati se l'API è cambiata
|
||||
- [ ] Conventional Commits rispettato
|
||||
- [ ] Nessun file in `dist/` o `__pycache__/` committato
|
||||
- [ ] Self-review completata
|
||||
|
||||
## Note Aggiuntive
|
||||
|
||||
<!-- Eventuali considerazioni per i reviewer, screenshot, output di test, ecc. -->
|
||||
@@ -0,0 +1,66 @@
|
||||
# Build (GitHub) — pipeline CI primaria
|
||||
#
|
||||
# Strategia hosting:
|
||||
# - Repo primario su Gitea (push iniziale)
|
||||
# - Push mirror automatico Gitea -> GitHub
|
||||
# - GitHub esegue TUTTA la CI (Gitea non esegue Actions)
|
||||
#
|
||||
# Trigger:
|
||||
# - push su main (incluso quello propagato dal mirror Gitea)
|
||||
# - PR aperte su GitHub
|
||||
# - run manuale via UI
|
||||
|
||||
name: Build
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
paths-ignore:
|
||||
- '**.md'
|
||||
- 'docs/**'
|
||||
- 'examples/**'
|
||||
pull_request:
|
||||
branches: [main]
|
||||
workflow_dispatch:
|
||||
|
||||
env:
|
||||
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: windows-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
config: [x86-ansi, x86-unicode, x64-unicode]
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Setup MSBuild
|
||||
uses: microsoft/setup-msbuild@v2
|
||||
|
||||
- name: Read VERSION
|
||||
id: version
|
||||
shell: pwsh
|
||||
run: |
|
||||
$v = (Get-Content VERSION -Raw).Trim()
|
||||
"version=$v" | Out-File -FilePath $env:GITHUB_OUTPUT -Append
|
||||
|
||||
- name: Build ${{ matrix.config }}
|
||||
run: python build_plugin.py --config ${{ matrix.config }} --verbosity minimal
|
||||
|
||||
- name: Upload DLL
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: ${{ github.event.repository.name }}-${{ steps.version.outputs.version }}-${{ matrix.config }}
|
||||
path: dist/**
|
||||
if-no-files-found: error
|
||||
retention-days: 30
|
||||
@@ -0,0 +1,99 @@
|
||||
# Release (GitHub) — pipeline release primaria
|
||||
#
|
||||
# Triggerata quando un tag v* viene propagato dal mirror Gitea.
|
||||
# Costruisce gli artifact per tutte le architetture e crea la GitHub Release.
|
||||
|
||||
name: Release
|
||||
|
||||
on:
|
||||
push:
|
||||
tags: ['v*']
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
tag:
|
||||
description: 'Tag versione (es. v1.7.0)'
|
||||
required: true
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: windows-latest
|
||||
strategy:
|
||||
fail-fast: true
|
||||
matrix:
|
||||
config: [x86-ansi, x86-unicode, x64-unicode]
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
|
||||
- uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- uses: microsoft/setup-msbuild@v2
|
||||
|
||||
- name: Build ${{ matrix.config }}
|
||||
run: python build_plugin.py --config ${{ matrix.config }}
|
||||
|
||||
- name: Determine version & arch
|
||||
id: meta
|
||||
shell: pwsh
|
||||
run: |
|
||||
$tag = "${{ github.ref_name }}"
|
||||
if ([string]::IsNullOrEmpty($tag) -or $tag -eq "main") { $tag = "${{ inputs.tag }}" }
|
||||
$v = $tag -replace '^v',''
|
||||
$map = @{ 'x86-ansi' = 'x86-ansi'; 'x86-unicode' = 'x86-unicode'; 'x64-unicode' = 'amd64-unicode' }
|
||||
$dir = $map['${{ matrix.config }}']
|
||||
echo "version=$v" >> $env:GITHUB_OUTPUT
|
||||
echo "tag=$tag" >> $env:GITHUB_OUTPUT
|
||||
echo "dir=$dir" >> $env:GITHUB_OUTPUT
|
||||
|
||||
- name: Package
|
||||
shell: pwsh
|
||||
run: |
|
||||
$name = "${{ github.event.repository.name }}-${{ steps.meta.outputs.version }}-${{ steps.meta.outputs.dir }}"
|
||||
$stage = "stage/$name"
|
||||
New-Item -ItemType Directory -Force -Path $stage | Out-Null
|
||||
Copy-Item "dist/${{ steps.meta.outputs.dir }}/*" $stage -Recurse
|
||||
Copy-Item README.md, LICENSE, VERSION, CHANGELOG.md $stage
|
||||
if (Test-Path "include") { Copy-Item "include" $stage -Recurse }
|
||||
if (Test-Path "examples") { Copy-Item "examples" $stage -Recurse }
|
||||
Compress-Archive -Path "$stage/*" -DestinationPath "$name.zip" -Force
|
||||
|
||||
- uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: pkg-${{ matrix.config }}
|
||||
path: '*.zip'
|
||||
|
||||
publish:
|
||||
needs: build
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: actions/download-artifact@v4
|
||||
with:
|
||||
path: artifacts
|
||||
merge-multiple: true
|
||||
|
||||
- name: SHA256SUMS
|
||||
run: |
|
||||
cd artifacts
|
||||
sha256sum *.zip > SHA256SUMS.txt
|
||||
cat SHA256SUMS.txt
|
||||
|
||||
- name: Create GitHub Release
|
||||
uses: softprops/action-gh-release@v2
|
||||
with:
|
||||
files: |
|
||||
artifacts/*.zip
|
||||
artifacts/SHA256SUMS.txt
|
||||
generate_release_notes: true
|
||||
body: |
|
||||
**Repository primario**: vedi link Gitea nel README.
|
||||
|
||||
Il mirror GitHub è generato automaticamente dal repo Gitea (sorgente di verità).
|
||||
Per issue e PR aprire ticket sul repository primario Gitea.
|
||||
Reference in New Issue
Block a user