You've already forked hotpocket
BTHLABS-0000: bump-version task
Enough with manual version bumps :D Co-authored-by: Tomek Wójcik <labs@tomekwojcik.pl> Co-committed-by: Tomek Wójcik <labs@tomekwojcik.pl>
This commit is contained in:
124
services/apple/tasks.py
Normal file
124
services/apple/tasks.py
Normal file
@@ -0,0 +1,124 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# type: ignore
|
||||
from __future__ import annotations
|
||||
|
||||
import re
|
||||
|
||||
from invoke import Context, task
|
||||
from invoke.exceptions import UnexpectedExit
|
||||
|
||||
from hotpocket_workspace_tools import get_workspace_mode
|
||||
import hotpocket_workspace_tools.tasks
|
||||
|
||||
WORKSPACE_MODE = get_workspace_mode()
|
||||
|
||||
|
||||
@task
|
||||
def clean(ctx: Context):
|
||||
ctx.run('rm -rf DerivedData/')
|
||||
|
||||
|
||||
@task
|
||||
def test(ctx: Context):
|
||||
print('NOOP')
|
||||
|
||||
|
||||
@task
|
||||
def flake8(ctx: Context):
|
||||
ctx.run('flake8')
|
||||
|
||||
|
||||
@task
|
||||
def isort(ctx, check=False, diff=False):
|
||||
command_parts = [
|
||||
'isort',
|
||||
]
|
||||
|
||||
if check is True:
|
||||
command_parts.append('--check')
|
||||
|
||||
if diff is True:
|
||||
command_parts.append('--diff')
|
||||
|
||||
command_parts.append('.')
|
||||
|
||||
ctx.run(' '.join(command_parts))
|
||||
|
||||
|
||||
@task
|
||||
def eslint(ctx: Context):
|
||||
print('NOOP')
|
||||
|
||||
|
||||
@task
|
||||
def lint(ctx: Context):
|
||||
ihazsuccess = True
|
||||
|
||||
try:
|
||||
flake8(ctx)
|
||||
except UnexpectedExit:
|
||||
ihazsuccess = False
|
||||
|
||||
try:
|
||||
isort(ctx, check=True)
|
||||
except UnexpectedExit:
|
||||
ihazsuccess = False
|
||||
|
||||
if ihazsuccess is False:
|
||||
raise RuntimeError('FIAL')
|
||||
|
||||
|
||||
@task
|
||||
def typecheck(ctx: Context):
|
||||
ctx.run('mypy .')
|
||||
|
||||
|
||||
@task
|
||||
def django_shell(ctx: Context):
|
||||
raise NotImplementedError()
|
||||
|
||||
|
||||
@task
|
||||
def ci(ctx: Context):
|
||||
ihazsuccess = True
|
||||
|
||||
ci_tasks = [test, lint, typecheck]
|
||||
for ci_task in ci_tasks:
|
||||
try:
|
||||
ci_task(ctx)
|
||||
except UnexpectedExit:
|
||||
ihazsuccess = False
|
||||
|
||||
if ihazsuccess is False:
|
||||
raise RuntimeError('FIAL')
|
||||
|
||||
|
||||
@task
|
||||
def setup(ctx: Context):
|
||||
print('NOOP')
|
||||
|
||||
|
||||
@task
|
||||
def start_web(ctx: Context):
|
||||
raise NotImplementedError()
|
||||
|
||||
|
||||
@task
|
||||
def bump_version(ctx: Context, next_version: str, build: str | None = None):
|
||||
hotpocket_workspace_tools.tasks.utils.bump_version(
|
||||
ctx, next_version, build=build,
|
||||
)
|
||||
|
||||
pbxproj_content = None
|
||||
with open('HotPocket.xcodeproj/project.pbxproj', 'r', encoding='utf-8') as pbxproj_content_f:
|
||||
pbxproj_content = pbxproj_content_f.read()
|
||||
|
||||
pbxproj_content = re.sub(
|
||||
r'CURRENT_PROJECT_VERSION = [0-9]{10};',
|
||||
f'CURRENT_PROJECT_VERSION = {build};',
|
||||
pbxproj_content,
|
||||
flags=re.MULTILINE,
|
||||
)
|
||||
|
||||
with open('HotPocket.xcodeproj/project.pbxproj', 'w', encoding='utf-8') as pbxproj_content_f:
|
||||
pbxproj_content_f.write(pbxproj_content)
|
||||
Reference in New Issue
Block a user