mirror of
https://github.com/Yamato-Security/WELA.git
synced 2026-10-02 04:24:44 +02:00
81 lines
4.3 KiB
YAML
81 lines
4.3 KiB
YAML
name: WELA Release Automation
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
release_ver:
|
|
required: true
|
|
default: "1.0.0"
|
|
description: "Version of the release"
|
|
branch_or_tag:
|
|
required: true
|
|
default: "main"
|
|
description: "Branch or Tag to checkout"
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
upload:
|
|
runs-on: ${{ matrix.info.os }}
|
|
strategy:
|
|
matrix:
|
|
info:
|
|
- { os: "windows-latest" }
|
|
- { os: "macos-latest" }
|
|
|
|
steps:
|
|
- name: Checkout Repository
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
with:
|
|
ref: ${{ github.event.inputs.branch_or_tag }}
|
|
submodules: 'true'
|
|
|
|
- name: Package and Zip - Windows
|
|
if: contains(matrix.info.os, 'windows') == true
|
|
shell: pwsh
|
|
run: |
|
|
mkdir -p release-binaries
|
|
Copy-Item -Path WELA.ps1 -Destination release-binaries/
|
|
Copy-Item -Recurse -Path ./config -Destination release-binaries/
|
|
Copy-Item -Recurse -Path ./scripts -Destination release-binaries/
|
|
Copy-Item -Recurse -Path ./modules -Destination release-binaries/
|
|
New-Item -ItemType Directory -Path release-binaries/docs -Force | Out-Null
|
|
Copy-Item -Path ./docs/gpo-audit-packages.md, ./docs/gpo-package-deployment.md, ./docs/gpo-creation.md, ./docs/wmi-probe.md, ./docs/firewall-logging.md, ./docs/firewall-logging-recovery.md, ./docs/ipsec-prerequisites.md, ./docs/wec-state.md, ./docs/wec-update.md, ./docs/wec-runtime.md, ./docs/wef-deployment.md, ./docs/native-channel-access.md, ./docs/eventlog-settings.md, ./docs/channel-read.md, ./docs/native-rule-eligibility.md, ./docs/native-validation.md, ./docs/wef-arrival.md, ./docs/smb-runtime-activation.md, ./docs/smb-auditing.md, ./docs/wec-ingress.md, ./docs/capi2-probe.md, ./docs/powershell-transcription.md, ./docs/transcription-recovery.md, ./docs/eventlog-recovery.md, ./docs/failed-logon-probe.md, ./docs/wec-listener.md, ./docs/file-access-probe.md, ./docs/applocker-script-probe.md, ./docs/applocker-probe.md, ./docs/selected-sacl-configuration.md, ./docs/registry-sacl-recovery.md, ./docs/targeted-sacl-planning.md, ./docs/native-registry-sacl-validation.md, ./docs/wec-authorization.md, ./docs/channel-recovery.md, ./docs/outgoing-ntlm.md, ./docs/wec-collector-observation.md, ./docs/native-provider-packs.md, ./docs/native-provider-acceptance.md, ./docs/audit-catalog-mappings.md, ./docs/native-token-right-attribution.md, ./docs/audit-notifications.md, ./docs/native-onesettings-acceptance.md, ./docs/ntlm-auditing.md, ./docs/wef-query.md, ./docs/native-filesystem-sacl-validation.md, ./docs/registry-value-probe.md, ./docs/transcript-probe.md, ./docs/file-sacl-recovery.md, ./docs/dns-client-probe.md, ./docs/wmi-sacl-recovery.md, ./docs/wmi-namespace-auditing.md, ./docs/wmi-descendants.md, ./docs/process-commandline.md, ./docs/powershell-logging.md -Destination release-binaries/docs/
|
|
|
|
- name: Set Artifact Name
|
|
if: contains(matrix.info.os, 'windows') == true
|
|
id: set_artifact_name
|
|
shell: bash
|
|
run: |
|
|
echo "artifact_name=wela-${{ github.event.inputs.release_ver }}" >> $GITHUB_OUTPUT
|
|
|
|
- name: Upload Artifacts
|
|
if: contains(matrix.info.os, 'windows') == true
|
|
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
|
|
with:
|
|
name: ${{ steps.set_artifact_name.outputs.artifact_name }}
|
|
path: release-binaries/*
|
|
|
|
- name: Setup node
|
|
if: matrix.info.os == 'macos-latest'
|
|
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
|
|
with:
|
|
node-version: 20
|
|
|
|
- name: Create PDF
|
|
if: matrix.info.os == 'macos-latest'
|
|
run: |
|
|
npm i -g md-to-pdf
|
|
md-to-pdf ./OLD-README.md ./OLD-README-Japanese.md --md-file-encoding utf-8
|
|
mv ./OLD-README.pdf ./README-${{ github.event.inputs.release_ver }}-English.pdf
|
|
mv ./OLD-README-Japanese.pdf ./README-${{ github.event.inputs.release_ver }}-Japanese.pdf
|
|
|
|
- name: Upload Document Artifacts
|
|
if: matrix.info.os == 'macos-latest'
|
|
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
|
|
with:
|
|
name: wela-documents
|
|
path: |
|
|
./*.pdf
|