Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
244f995490 | ||
|
|
75adb282e7 | ||
|
|
eacfa17e40 | ||
|
|
f4448835ab |
@@ -0,0 +1,20 @@
|
|||||||
|
name: release
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
tags: ["*"]
|
||||||
|
|
||||||
|
env:
|
||||||
|
POETRY_HTTP_BASIC_InfernalGames_USERNAME: ${{ vars.PUBLISH_USERNAME }}
|
||||||
|
POETRY_HTTP_BASIC_InfernalGames_PASSWORD: ${{ secrets.PUBLISH_TOKEN }}
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
release:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v7
|
||||||
|
- uses: https://git.shmyga.ru/InfernalGames/project-manager@master
|
||||||
|
with:
|
||||||
|
setup-python: true
|
||||||
|
- run: pm build -vv
|
||||||
|
- run: pm publish -vv
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
name: test
|
||||||
|
|
||||||
|
on: push
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
test:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v7
|
||||||
|
- uses: https://git.shmyga.ru/InfernalGames/project-manager@master
|
||||||
|
with:
|
||||||
|
setup-python: true
|
||||||
|
- run: pm lint -vv
|
||||||
|
- run: pm test -vv
|
||||||
@@ -1,9 +1,17 @@
|
|||||||
# Project Manager
|
# Project Manager
|
||||||
|
|
||||||
|
Automatically detects modules and executes commands
|
||||||
|
|
||||||
|
Supported types:
|
||||||
|
|
||||||
|
- python (poetry)
|
||||||
|
- nodejs (npm)
|
||||||
|
- docker
|
||||||
|
|
||||||
## Install
|
## Install
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
pipx install project-manager -i https://git.shmyga.ru/InfernalGames/project-manager/packages
|
pipx install project-manager -i https://git.shmyga.ru/api/packages/InfernalGames/pypi/simple/ --pip-args="--extra-index-url https://pypi.org/simple"
|
||||||
```
|
```
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
@@ -14,17 +22,16 @@ pipx install project-manager -i https://git.shmyga.ru/InfernalGames/project-mana
|
|||||||
pm [-v] [-vv]
|
pm [-v] [-vv]
|
||||||
```
|
```
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
### Run task
|
### Run task
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
pm <task>[:<tag>] [-v] [-vv]
|
pm <task>[:<tag>][:<sub_tag>] [-v] [-vv]
|
||||||
```
|
```
|
||||||
|
|
||||||
## Presets locations
|

|
||||||
|

|
||||||
- default presets [`project_manager/preset/default/*.toml`](./project_manager/preset/default)
|
|
||||||
- user preset `$HOME/.pm.toml`
|
|
||||||
- project preset `./.pm.toml`
|
|
||||||
|
|
||||||
## Preset format
|
## Preset format
|
||||||
|
|
||||||
@@ -39,3 +46,9 @@ commands = ["<command>"]
|
|||||||
### Examples
|
### Examples
|
||||||
|
|
||||||
[Default presets](./project_manager/preset/default)
|
[Default presets](./project_manager/preset/default)
|
||||||
|
|
||||||
|
## Presets locations
|
||||||
|
|
||||||
|
- default presets [`project_manager/preset/default/*.toml`](./project_manager/preset/default)
|
||||||
|
- user preset `$HOME/.pm.toml`
|
||||||
|
- project preset `./.pm.toml`
|
||||||
|
|||||||
+36
@@ -0,0 +1,36 @@
|
|||||||
|
name: "Project Manager"
|
||||||
|
inputs:
|
||||||
|
python-version:
|
||||||
|
default: "3.14"
|
||||||
|
setup-python:
|
||||||
|
default: false
|
||||||
|
venv-version:
|
||||||
|
default: "1"
|
||||||
|
runs:
|
||||||
|
using: "composite"
|
||||||
|
steps:
|
||||||
|
- id: setup-python
|
||||||
|
uses: actions/setup-python@v7
|
||||||
|
with:
|
||||||
|
python-version: ${{ inputs.python-version }}
|
||||||
|
cache: "pip"
|
||||||
|
|
||||||
|
- run: |
|
||||||
|
pip install project-manager \
|
||||||
|
--index-url https://git.shmyga.ru/api/packages/InfernalGames/pypi/simple/ \
|
||||||
|
--extra-index-url https://pypi.org/simple
|
||||||
|
|
||||||
|
- run: pm setup:config -vv
|
||||||
|
|
||||||
|
- if: inputs.setup-python
|
||||||
|
run: pip install poetry
|
||||||
|
|
||||||
|
- id: cache-venv
|
||||||
|
if: inputs.setup-python
|
||||||
|
uses: actions/cache@v6
|
||||||
|
with:
|
||||||
|
path: .venv
|
||||||
|
key: venv-${{ runner.os }}-python-${{ steps.setup-python.outputs.python-version }}-${{ hashFiles('**/poetry.lock') }}-v${{ inputs.venv-version }}
|
||||||
|
|
||||||
|
- if: ${{ inputs.setup-python && steps.cache-venv.outputs.cache-hit != 'true' }}
|
||||||
|
run: pm setup:python -vv
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 106 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 76 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 62 KiB |
@@ -6,7 +6,7 @@ variables.python_poetry = "{{ 'pyproject.toml' | read | get('build-system.build-
|
|||||||
[presets.python.tasks.setup.poetry]
|
[presets.python.tasks.setup.poetry]
|
||||||
conditions = ["{{ python_poetry }}"]
|
conditions = ["{{ python_poetry }}"]
|
||||||
variables.python_version = "{{ 'pyproject.toml' | read | get('project.requires-python') | search('(\\d+.\\d+)') }}"
|
variables.python_version = "{{ 'pyproject.toml' | read | get('project.requires-python') | search('(\\d+.\\d+)') }}"
|
||||||
commands = ["poetry env use {{ python_version }}", "poetry install"]
|
commands = ["poetry env use {{ python_version }}", "poetry install --all-extras"]
|
||||||
|
|
||||||
# playwright
|
# playwright
|
||||||
[presets.python.tasks.setup.playwright]
|
[presets.python.tasks.setup.playwright]
|
||||||
|
|||||||
+1
-1
@@ -1,7 +1,7 @@
|
|||||||
[project]
|
[project]
|
||||||
name = "project-manager"
|
name = "project-manager"
|
||||||
description = ""
|
description = ""
|
||||||
version = "0.3.0"
|
version = "0.3.1"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
authors = [{ name = "shmyga", email = "shmyga.z@gmail.com" }]
|
authors = [{ name = "shmyga", email = "shmyga.z@gmail.com" }]
|
||||||
requires-python = ">=3.14,<4.0"
|
requires-python = ">=3.14,<4.0"
|
||||||
|
|||||||
Reference in New Issue
Block a user