Add GitHub templates and CI/CD workflow
This commit is contained in:
parent
851b41180e
commit
4d16d72a4f
|
|
@ -0,0 +1,2 @@
|
|||
# Code owners
|
||||
@y0sy4
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
name: 🐛 Bug Report
|
||||
description: Report a bug or issue
|
||||
title: "[Bug] "
|
||||
labels: ["bug"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thanks for taking the time to fill out this bug report!
|
||||
- type: input
|
||||
id: version
|
||||
attributes:
|
||||
label: Version
|
||||
description: What version are you using?
|
||||
placeholder: v2.0.0
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: os
|
||||
attributes:
|
||||
label: Operating System
|
||||
description: What OS are you using?
|
||||
options:
|
||||
- Windows
|
||||
- Linux
|
||||
- macOS (Intel)
|
||||
- macOS (Apple Silicon)
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: description
|
||||
attributes:
|
||||
label: Describe the bug
|
||||
description: A clear and concise description of what the bug is
|
||||
placeholder: The proxy crashes when...
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: logs
|
||||
attributes:
|
||||
label: Logs
|
||||
description: Paste relevant log output (from %APPDATA%/TgWsProxy/proxy.log)
|
||||
render: shell
|
||||
- type: textarea
|
||||
id: steps
|
||||
attributes:
|
||||
label: Steps to Reproduce
|
||||
description: How can we reproduce this issue?
|
||||
placeholder: |
|
||||
1. Run the proxy
|
||||
2. Connect Telegram
|
||||
3. See error
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
name: 💡 Feature Request
|
||||
description: Suggest a new feature or improvement
|
||||
title: "[Feature] "
|
||||
labels: ["enhancement"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thanks for suggesting a feature!
|
||||
- type: textarea
|
||||
id: problem
|
||||
attributes:
|
||||
label: Is your feature request related to a problem?
|
||||
description: A clear and concise description of what the problem is
|
||||
placeholder: I'm always frustrated when...
|
||||
- type: textarea
|
||||
id: solution
|
||||
attributes:
|
||||
label: Describe the solution you'd like
|
||||
description: A clear and concise description of what you want to happen
|
||||
placeholder: I would like to see...
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: alternatives
|
||||
attributes:
|
||||
label: Describe alternatives you've considered
|
||||
description: A clear and concise description of any alternative solutions or features you've considered
|
||||
- type: dropdown
|
||||
id: platform
|
||||
attributes:
|
||||
label: Platform
|
||||
description: Which platform is this for?
|
||||
options:
|
||||
- All platforms
|
||||
- Windows
|
||||
- Linux
|
||||
- macOS
|
||||
- Android (planned)
|
||||
- iOS (planned)
|
||||
validations:
|
||||
required: true
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
name: Pull Request
|
||||
description: Submit a pull request
|
||||
title: "[PR] "
|
||||
labels: ["enhancement"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thanks for contributing to TG WS Proxy Go!
|
||||
- type: textarea
|
||||
id: description
|
||||
attributes:
|
||||
label: Description
|
||||
description: What does this PR do?
|
||||
placeholder: This PR adds/fixes...
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: testing
|
||||
attributes:
|
||||
label: Testing
|
||||
description: How did you test this?
|
||||
placeholder: I tested on Windows/Linux/macOS...
|
||||
validations:
|
||||
required: true
|
||||
- type: checkboxes
|
||||
id: checklist
|
||||
attributes:
|
||||
label: Checklist
|
||||
options:
|
||||
- label: I have tested this locally
|
||||
required: true
|
||||
- label: Code follows project guidelines
|
||||
required: true
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
name: Build Release
|
||||
|
||||
on:
|
||||
release:
|
||||
types: [created]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
matrix:
|
||||
os: [windows-latest, ubuntu-latest, macos-latest, macos-13]
|
||||
include:
|
||||
- os: windows-latest
|
||||
artifact: TgWsProxy_windows_amd64.exe
|
||||
goos: windows
|
||||
goarch: amd64
|
||||
- os: ubuntu-latest
|
||||
artifact: TgWsProxy_linux_amd64
|
||||
goos: linux
|
||||
goarch: amd64
|
||||
- os: macos-latest
|
||||
artifact: TgWsProxy_darwin_arm64
|
||||
goos: darwin
|
||||
goarch: arm64
|
||||
- os: macos-13
|
||||
artifact: TgWsProxy_darwin_amd64
|
||||
goos: darwin
|
||||
goarch: amd64
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: '1.21'
|
||||
|
||||
- name: Build
|
||||
run: |
|
||||
go build -ldflags "-s -w" -o ${{ matrix.artifact }} ./cmd/proxy
|
||||
env:
|
||||
GOOS: ${{ matrix.goos }}
|
||||
GOARCH: ${{ matrix.goarch }}
|
||||
|
||||
- name: Upload to Release
|
||||
uses: softprops/action-gh-release@v1
|
||||
with:
|
||||
files: ${{ matrix.artifact }}
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
Loading…
Reference in New Issue