<commit_before>#!/bin/bash
# Скрипт для авторелиза на guthub с обращением к GitHub APIv3
###################################################################################################################
#Создание авторелиза. Весь процесс создания релиза происходит в два этапа:
# 1. Подготовка к релизу.
#   а. Генерация файлов для релиза с использованием mvn
#   б. Получение необходимой информации о будущем релизе из CHANGELOG.md
# 2. Релиз.
#   а. Формирование тела запроса в формате JSON
#   б. Создание тела релиза
#   в. Отправка ассетов на сайт
####################################################################################################################
# Как использовать:
# ./package.sh -t=ТУТТОКЕНКГИТХАБУ -rn="НАЗВАНИЕ РЕЛИЗА"
#
# Параметры:
# -t=ТУТТОКЕНКГИТХАБУ     Access token пользователя (https://github.com/settings/tokens)
# -rn="НАЗВАНИЕ РЕЛИЗА"   Название релиза, его краткое описание (НЕ название тэга)
####################################################################################################################
# Возможные обязательные/необязательные изменения в файле
# TARGET_COMMITISH, DRAFT, PRERELEASE
# !!!!Владелец репозитория OWNER_OF_REPO
# !!!!Название репозитория PROJECT
# Список файлов для релиза
####################################################################################################################
# В случае некорректной сборки mvn скрипт крашится
####################################################################################################################

# Переменная получающая из pom.xml версию проекта
version=$(mvn help:evaluate -Dexpression=project.version | grep '^[0-9][0-9A-Za-z\.\-]*$')

# Чтение аргументов
for i in "$@"
do
case $i in
    -t=*|--token=*)
    TOKEN="${i#*=}"
    shift
    ;;
    -rn=*|--releasename=*)
    RELEASE_NAME="${i#*=}"
    shift
    ;;
esac
done
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# Перечень переменных от которых зависит корректная отправка релиза
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# Токен доступа, генерируется в настройках профиля
GIT_TOKEN="$TOKEN"
# Здесь ветка, либо SHA
TARGET_COMMITISH="master"
# Название релиза
NAME_OF_RELEASE="$RELEASE_NAME"
# Если true, то релиз непубличный, по умолчанию всегда публичный и false
DRAFT=false
# Если true, то это пререлиз
PRERELEASE=false
# Владелец репозитория
OWNER_OF_REPO="technology16"
# Название репозитория
PROJECT="pgsqlblocks"

clean_tmp_files(){
    rm some.md;
    rm file.json;<commit_msg>flag for getting token from file github.token<commit_after>#!/bin/bash
# Скрипт для авторелиза на guthub с обращением к GitHub APIv3
###################################################################################################################
#Создание авторелиза. Весь процесс создания релиза происходит в два этапа:
# 1. Подготовка к релизу.
#   а. Генерация файлов для релиза с использованием mvn
#   б. Получение необходимой информации о будущем релизе из CHANGELOG.md
# 2. Релиз.
#   а. Формирование тела запроса в формате JSON
#   б. Создание тела релиза
#   в. Отправка ассетов на сайт
####################################################################################################################
# Как использовать:
# ./package.sh -t=ТУТТОКЕНКГИТХАБУ -rn="НАЗВАНИЕ РЕЛИЗА"
#
# Параметры:
# -t=ТУТТОКЕНКГИТХАБУ     Access token пользователя (https://github.com/settings/tokens)
# -tf Флаг о том, чтобы использовать токен, находящийся в файле github.token
# -rn="НАЗВАНИЕ РЕЛИЗА"   Название релиза, его краткое описание (НЕ название тэга)
####################################################################################################################
# Возможные обязательные/необязательные изменения в файле
# TARGET_COMMITISH, DRAFT, PRERELEASE
# !!!!Владелец репозитория OWNER_OF_REPO
# !!!!Название репозитория PROJECT
# Список файлов для релиза
####################################################################################################################
# В случае некорректной сборки mvn скрипт крашится
####################################################################################################################

# Переменная получающая из pom.xml версию проекта
version=$(mvn help:evaluate -Dexpression=project.version | grep '^[0-9][0-9A-Za-z\.\-]*$')

# Чтение аргументов
echo "ARGUMENTS"
for i in "$@"
do
case $i in
    -t=*|--token=*)
    TOKEN="${i#*=}"
    shift
    ;;
    -tf|--token-file)
    TOKEN=`cat github.token`
    shift
    ;;
    -rn=*|--releasename=*)
    RELEASE_NAME="${i#*=}"
    echo "RELEASE NAME"
    shift
    ;;
esac
done
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# Перечень переменных от которых зависит корректная отправка релиза
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# Токен доступа, генерируется в настройках профиля. Достаточно права repo
# Записывается в файл в виде 165434643515пиввапв

GIT_TOKEN=${TOKEN}
# Здесь ветка, либо SHA
TARGET_COMMITISH="master"
# Название релиза
NAME_OF_RELEASE="$RELEASE_NAME"
# Если true, то релиз непубличный, по умолчанию всегда публичный и false
DRAFT=false
# Если true, то это пререлиз
PRERELEASE=false
# Владелец репозитория
OWNER_OF_REPO="Nataly-Sagel"
#OWNER_OF_REPO="technology16"
# Название репозитория
PROJECT="pgsqlblocks"

clean_tmp_files(){
    rm some.md;
    rm file.json;
{'fraction_non_alphanumeric': 0.3271452926690661, 'fraction_numerical': 0.005682894487592347, 'mean_word_length': 6.164179104477612, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 2}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '441730', 'n_tokens_mistral': 1892, 'n_tokens_neox': 2045, 'n_words': 409}