Merge pull request 'fix(ci): update deploy workflows' (#22) from dev into main
All checks were successful
Build and deploy / build (push) Successful in 56s
Build and deploy / deploy (push) Successful in 8s

Reviewed-on: #22
This commit was merged in pull request #22.
This commit is contained in:
2025-12-19 11:38:38 +00:00
4 changed files with 65 additions and 10 deletions

View File

@@ -0,0 +1,53 @@
name: Build and deploy
on:
push:
branches:
- 'main'
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push
uses: docker/build-push-action@v5
with:
push: true
tags: smallbuster/request-bot:latest
deploy:
runs-on: ubuntu-latest
needs: build
steps:
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Pull Docker image from Docker Hub
run: |
docker pull smallbuster/request-bot:latest
- name: Stop and remove existing container
run: |
docker stop request-bot || true && docker rm request-bot || true
- name: Run Docker container
run: |
docker run -d --restart unless-stopped \
-e EMAIL_ADDRESS=${{secrets.EMAIL_ADDRESS}} \
-e EMAIL_PASSWORD=${{secrets.EMAIL_PASSWORD}} \
-e EMAIL_IMAP_SERVER=${{secrets.EMAIL_IMAP_SERVER}} \
-e EMAIL_IMAP_SERVER_PORT=${{secrets.EMAIL_IMAP_SERVER_PORT}} \
-e TELEGRAM_BOT_TOKEN=${{secrets.TELEGRAM_BOT_TOKEN}} \
-e TELEGRAM_GROUP_ID=${{secrets.TELEGRAM_GROUP_ID}} \
-e MARK_STRING=${{secrets.MARK_STRING}} \
-e POLLING_TIMEOUT=${{secrets.POLLING_TIMEOUT}} \
--name request-bot smallbuster/request-bot:latest

6
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "requestbot",
"version": "0.1.0",
"version": "0.7.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "requestbot",
"version": "0.1.0",
"version": "0.7.0",
"license": "ISC",
"dependencies": {
"chalk": "^4.1.2",
@@ -125,6 +125,7 @@
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.11.tgz",
"integrity": "sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==",
"dev": true,
"peer": true,
"dependencies": {
"undici-types": "~5.26.4"
}
@@ -1346,6 +1347,7 @@
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz",
"integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==",
"dev": true,
"peer": true,
"bin": {
"tsc": "bin/tsc",
"tsserver": "bin/tsserver"

View File

@@ -45,13 +45,13 @@ const main = async () => {
let {title, groupName, subject, user, estimatedDate, estimatedTime} = parseMessage(parsed.text)
console.log(
`📌 Новое обращение: ${title}`, '\n',
`Группа: ${groupName}`, '\n',
`${user}`, '\n',
`${subject}`, '\n',
`Время выполнения: ${estimatedDate} ${estimatedTime}`, '\n'
)
// console.log(
// `📌 Новое обращение: ${title}`, '\n',
// `Группа: ${groupName}`, '\n',
// `${user}`, '\n',
// `${subject}`, '\n',
// `Время выполнения: ${estimatedDate} ${estimatedTime}`, '\n'
// )
const preparedMessage =
`📌 Новое обращение: ${title}\n` +
@@ -77,7 +77,7 @@ const main = async () => {
} finally {
lock.release(); // mandatory release mailbox
await client.logout(); // log out and close connection
console.log('🧡', chalk.cyan('Heartbeat is ok'))
//console.log('🧡', chalk.cyan('Heartbeat is ok'))
}
};