Skip to content

Commit a44f65e

Browse files
committed
feat(release): initial release v0.0.1 of Hatiyar security toolkit
- Security toolkit for penetration testing and vulnerability assessment - Cloud enumeration modules (AWS, Azure, GCP) - Kubernetes enumeration modules - CVE exploitation modules - Comprehensive documentation
0 parents  commit a44f65e

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

91 files changed

+24346
-0
lines changed
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
---
2+
name: Bug Report
3+
about: Report a bug or unexpected behavior so we can fix it
4+
title: 'BUG: '
5+
labels: bug
6+
assignees: ''
7+
---
8+
9+
## Describe the Bug
10+
A clear and concise description of what went wrong. If possible, include code snippets, logs, or screenshots that help us understand the issue.
11+
12+
## Expected Behavior
13+
Explain what you expected to happen instead. If applicable, include examples or screenshots to illustrate the correct behavior.
14+
15+
## Steps to Reproduce
16+
Please provide steps to help us reproduce the issue:
17+
1. Go to '...'
18+
2. Run '...'
19+
3. Observe the error/behavior
20+
21+
## Environment
22+
- OS: [e.g. macOS, Ubuntu, Windows]
23+
- Python/Node/Runtime version: [e.g. Python 3.10]
24+
- Tool/Package version: [e.g. 1.2.3]
25+
- Any other relevant details:
26+
27+
## Additional Context
28+
Add any extra information, references, or related issues that could help us investigate.
29+
30+
## Attachments (optional)
31+
If possible, attach relevant logs, error outputs, or screenshots.

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
blank_issues_enabled: false
2+
contact_links:
3+
- name: Question or Problem
4+
about: Ask a question or ask about a problem in GitHub Discussions.
5+
url: https://github.com/ajutamangdev/hatiyar/discussions/categories/q-a
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
---
2+
name: Feature Request
3+
about: Suggest a new feature or enhancement
4+
title: 'FEAT: '
5+
labels: feature
6+
assignees: ''
7+
---
8+
9+
## Feature Description
10+
A clear and concise description of the feature or enhancement you’d like to see. If possible, include mockups, code examples, or screenshots to help illustrate your idea.
11+
12+
## Why This Feature?
13+
Explain **why** this feature is valuable:
14+
- What problem does it solve?
15+
- Who would benefit from it?
16+
- How does it improve the project?
17+
18+
## Proposed Solution
19+
Describe how you imagine the feature working.
20+
21+
You can include:
22+
- Example usage
23+
- CLI command samples
24+
25+
## Alternatives Considered
26+
If relevant, mention any alternative solutions or workarounds you’ve thought about.
27+
28+
## Additional Context
29+
Add any other context, references, or related issues that could help us understand the request.
30+

.github/pull_request_template.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
## Description
2+
Describe what this PR does and why. Include any relevant context or references to related issues.
3+
4+
## Changes Made
5+
- [ ] Feature added / updated
6+
- [ ] Bug fix
7+
- [ ] Documentation
8+
- [ ] Other
9+
10+
**Summary of changes:**
11+
- ...
12+
- ...
13+
14+
## Screenshots / Demos (if applicable)
15+
Add screenshots, terminal output, or GIFs to help reviewers understand the change.
16+
17+
## How to Test
18+
Steps to test this PR:
19+
1. ...
20+
2. ...
21+
3. ...
22+
23+
## Related Issues
24+
Closes #ISSUE_NUMBER
25+
26+
## Checklist
27+
- [ ] Code follows the project’s coding standards
28+
- [ ] Tests have been added or updated (if applicable)
29+
- [ ] Documentation updated (if needed)
30+
- [ ] All CI checks pass
31+
32+
## Additional Notes
33+
Add any extra information that reviewers should know.

.github/release.yml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
changelog:
2+
exclude:
3+
labels:
4+
- ignore-for-release
5+
authors:
6+
- dependabot
7+
categories:
8+
- title: Features
9+
labels:
10+
- feat
11+
- feature
12+
- enhancement
13+
- title: Bug Fixes
14+
labels:
15+
- fix
16+
- bug
17+
- bugfix
18+
- title: Documentation
19+
labels:
20+
- docs
21+
- documentation
22+
- title: Performance
23+
labels:
24+
- perf
25+
- performance
26+
- title: Maintenance
27+
labels:
28+
- chore
29+
- refactor
30+
- ci
31+
- build
32+
- title: Other Changes
33+
labels:
34+
- "*"

.github/workflows/ci.yml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
branches:
9+
- main
10+
workflow_call:
11+
workflow_dispatch:
12+
13+
jobs:
14+
lint:
15+
runs-on: ubuntu-latest
16+
steps:
17+
- uses: actions/checkout@v5
18+
19+
- name: Install uv
20+
uses: astral-sh/setup-uv@v7
21+
with:
22+
enable-cache: true
23+
cache-dependency-glob: "uv.lock"
24+
25+
- name: Install dependencies
26+
run: uv sync --frozen
27+
28+
- name: Run ruff linting
29+
run: uvx ruff check
30+
31+
- name: Run ruff formatting check
32+
run: uvx ruff format --check
33+
34+
build:
35+
runs-on: ubuntu-latest
36+
needs: [lint]
37+
steps:
38+
- uses: actions/checkout@v5
39+
40+
- name: Install uv
41+
uses: astral-sh/setup-uv@v7
42+
with:
43+
enable-cache: true
44+
45+
- name: Build package
46+
run: uv build --no-sources
47+
48+
- name: Upload build artifacts
49+
uses: actions/upload-artifact@v4
50+
with:
51+
name: dist
52+
path: dist/

.github/workflows/deploy-docs.yml

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
name: Deploy Docs to Github Pages
2+
3+
on:
4+
# Runs on pushes targeting the default branch
5+
push:
6+
branches: ["main"]
7+
8+
# Allows you to run this workflow manually from the Actions tab
9+
workflow_dispatch:
10+
11+
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
12+
permissions:
13+
contents: read
14+
pages: write
15+
id-token: write
16+
17+
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
18+
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
19+
concurrency:
20+
group: "pages"
21+
cancel-in-progress: false
22+
23+
env:
24+
BUILD_PATH: "./docs" # Astro project is in docs folder
25+
26+
jobs:
27+
build:
28+
name: Build
29+
runs-on: ubuntu-latest
30+
steps:
31+
- name: Checkout
32+
uses: actions/checkout@v4
33+
- name: Setup Node
34+
uses: actions/setup-node@v4
35+
with:
36+
node-version: "20"
37+
cache: npm
38+
cache-dependency-path: ${{ env.BUILD_PATH }}/package-lock.json
39+
- name: Setup Pages
40+
id: pages
41+
uses: actions/configure-pages@v5
42+
- name: Install dependencies
43+
run: npm ci
44+
working-directory: ${{ env.BUILD_PATH }}
45+
- name: Build with Astro
46+
run: |
47+
npx --no-install astro build \
48+
--site "${{ steps.pages.outputs.origin }}" \
49+
--base "${{ steps.pages.outputs.base_path }}"
50+
working-directory: ${{ env.BUILD_PATH }}
51+
- name: Upload artifact
52+
uses: actions/upload-pages-artifact@v3
53+
with:
54+
path: ${{ env.BUILD_PATH }}/dist
55+
56+
deploy:
57+
environment:
58+
name: github-pages
59+
url: ${{ steps.deployment.outputs.page_url }}
60+
needs: build
61+
runs-on: ubuntu-latest
62+
name: Deploy
63+
steps:
64+
- name: Deploy to GitHub Pages
65+
id: deployment
66+
uses: actions/deploy-pages@v4
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: "Conflict detector"
2+
on:
3+
push:
4+
pull_request_target:
5+
types: [synchronize]
6+
7+
jobs:
8+
main:
9+
permissions:
10+
contents: read
11+
pull-requests: write
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Check if PRs have merge conflicts
15+
uses: eps1lon/actions-label-merge-conflict@v3
16+
with:
17+
dirtyLabel: "conflicts"
18+
repoToken: "${{ secrets.GITHUB_TOKEN }}"
19+
commentOnDirty: "This pull request has a merge conflict that needs to be resolved."

.github/workflows/release.yml

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
name: Release Hatiyar to PyPI
2+
3+
permissions:
4+
contents: write
5+
issues: write
6+
pull-requests: write
7+
8+
on:
9+
push:
10+
branches:
11+
- main # Only release from main branch
12+
workflow_dispatch: # Allow manual trigger
13+
inputs:
14+
release_type:
15+
description: 'Release type (leave empty for auto)'
16+
required: false
17+
type: choice
18+
options:
19+
- '*'
20+
- patch
21+
- minor
22+
- major
23+
24+
jobs:
25+
release:
26+
name: Semantic Release
27+
runs-on: ubuntu-latest
28+
if: ${{ !contains(github.event.head_commit.message, 'chore(release)') }}
29+
30+
steps:
31+
- name: Checkout code
32+
uses: actions/checkout@v5
33+
with:
34+
fetch-depth: 0
35+
token: ${{ secrets.GITHUB_TOKEN }}
36+
37+
- name: Set up Python
38+
uses: actions/setup-python@v5
39+
with:
40+
python-version: '3.12'
41+
42+
- name: Set up uv
43+
uses: astral-sh/setup-uv@v7
44+
with:
45+
enable-cache: true
46+
47+
- name: Install dependencies
48+
run: |
49+
uv sync --all-extras
50+
51+
- name: Build with uv
52+
run: uv build --no-sources
53+
54+
- name: Publish to PyPI
55+
if: github.ref == 'refs/heads/main'
56+
env:
57+
UV_PUBLISH_TOKEN: ${{ secrets.PYPI_API_TOKEN }}
58+
run: uv publish
59+
60+
- name: Run latest-tag
61+
uses: EndBug/latest-tag@latest
62+
with:
63+
# You can change the name of the tag or branch with this input.
64+
# Default: 'latest'
65+
ref: latest
66+
# If a description is provided, the action will use it to create an annotated tag. If none is given, the action will create a lightweight tag.
67+
# Default: ''
68+
description: The latest release.
69+
# Force-update a branch instead of using a tag.
70+
# Default: false
71+
force-branch: false
72+
# Directory to use when executing git commands
73+
# Default: '${{ github.workspace }}'
74+
git-directory: '${{ github.workspace }}'

.gitignore

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
.venv/
2+
dist/
3+
hatiyar.egg-info/
4+
__pycache__/
5+
*.pyc
6+
*.pyo
7+
*.pyd
8+
*.log
9+
10+
tmp/
11+
*.json

0 commit comments

Comments
 (0)