testing actions
This commit is contained in:
parent
083ed6ae7d
commit
b4801ccc4d
53
.github/actions/aicoder/action.yml
vendored
53
.github/actions/aicoder/action.yml
vendored
@ -1,53 +0,0 @@
|
||||
name: 'AICoder GH Action'
|
||||
description: 'A GitHub action that uses AICoder to generate PRs improving the code of files absed on prompts'
|
||||
author: 'carlospolop'
|
||||
inputs:
|
||||
INPUT_MODE:
|
||||
description: 'Mode of operation'
|
||||
required: true
|
||||
INPUT_PROMPT:
|
||||
description: 'Prompt for the AI'
|
||||
required: false
|
||||
INPUT_API_KEY:
|
||||
description: 'OpenAI API Key'
|
||||
required: true
|
||||
INPUT_MODEL:
|
||||
description: 'Model to use for AI'
|
||||
required: false
|
||||
TEMPLATE_FILES:
|
||||
description: 'Template files for file-generator mode'
|
||||
required: false
|
||||
CHECK_PATH:
|
||||
description: 'Path to file/folder to modify'
|
||||
required: false
|
||||
ORIGIN_BRANCH:
|
||||
description: 'Origin branch to checkout'
|
||||
required: true
|
||||
TO_BRANCH:
|
||||
description: 'Branch to commit changes'
|
||||
required: true
|
||||
runs:
|
||||
using: 'composite'
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v2
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: '3.x'
|
||||
- name: Install dependencies
|
||||
run: pip3 install aicoder
|
||||
shell: bash
|
||||
- name: Run AI Coder
|
||||
run: python3 gh-aicoder.py
|
||||
env:
|
||||
INPUT_MODE: ${{ inputs.INPUT_MODE }}
|
||||
INPUT_PROMPT: ${{ inputs.INPUT_PROMPT }}
|
||||
INPUT_API_KEY: ${{ inputs.INPUT_API_KEY }}
|
||||
INPUT_MODEL: ${{ inputs.INPUT_MODEL }}
|
||||
TEMPLATE_FILES: ${{ inputs.TEMPLATE_FILES }}
|
||||
ORIGIN_BRANCH: ${{ inputs.ORIGIN_BRANCH }}
|
||||
TO_BRANCH: ${{ inputs.TO_BRANCH }}
|
||||
CHECK_PATH: ${{ inputs.CHECK_PATH }}
|
||||
shell: bash
|
||||
|
47
.github/actions/aicoder/gh-aicoder.py
vendored
47
.github/actions/aicoder/gh-aicoder.py
vendored
@ -1,47 +0,0 @@
|
||||
import subprocess
|
||||
import os
|
||||
|
||||
# https://docs.github.com/en/actions/learn-github-actions/finding-and-customizing-actions
|
||||
def main(mode, prompt, api_key, model, path, template_files):
|
||||
|
||||
# Get inputs from env variables
|
||||
mode = os.environ.get("INPUT_MODE").lower()
|
||||
prompt = os.environ.get("INPUT_PROMPT", "")
|
||||
api_key = os.environ.get("INPUT_API_KEY")
|
||||
model = os.environ.get("INPUT_MODEL", "gpt-4")
|
||||
path = os.environ.get("CHECK_PATH", "")
|
||||
template_files = os.environ.get("TEMPLATE_FILES", "")
|
||||
orig_branch = os.environ.get("ORIGIN_BRANCH", "")
|
||||
to_branch = os.environ.get("TO_BRANCH", "")
|
||||
|
||||
#Allowed modes
|
||||
allowed_modes = ["file-enhancer", "file-generator", "file-security", "file-optimizer", "file-comments", "file-bugfixer"]
|
||||
if mode not in allowed_modes:
|
||||
raise ValueError(f"Mode must be one of {allowed_modes}")
|
||||
|
||||
# Construct the aicoder command based on the mode
|
||||
command = [
|
||||
"aicoder",
|
||||
mode,
|
||||
"--prompt", prompt,
|
||||
"--api-key", api_key,
|
||||
"--model", model,
|
||||
"--orig-branch", orig_branch,
|
||||
"--to-branch", to_branch
|
||||
]
|
||||
|
||||
if path:
|
||||
command.extend(["--path", path])
|
||||
elif template_files:
|
||||
command.extend(["--template-files", template_files])
|
||||
else:
|
||||
raise ValueError("Either path or template_files must be provided")
|
||||
|
||||
if path and template_files:
|
||||
raise ValueError("Either path or template_files must be provided")
|
||||
|
||||
if template_files and mode != "file-generator":
|
||||
raise ValueError("template_files can only be used with file-generator mode")
|
||||
|
||||
# Run the command
|
||||
subprocess.run(command)
|
Loading…
Reference in New Issue
Block a user