Compare commits

..

9 Commits

Author SHA1 Message Date
975c3a4131 Actualiser .gitea/workflows/build-and-release.yml
Some checks failed
Build and Release Maubot Plugin / Build Plugin (push) Failing after 26s
2024-12-03 16:20:51 +01:00
5b9d8920de Actualiser .gitea/workflows/build-and-release.yml 2024-12-03 16:20:26 +01:00
MrRaph_
1a58e61d36 .
Some checks failed
Build and Release Maubot Plugin / Build Plugin (push) Failing after 39s
2024-12-03 16:14:28 +01:00
41902ad080 Actualiser .gitea/workflows/build-and-release.yml
Some checks failed
Build and Release Maubot Plugin / Build Plugin (push) Successful in 37s
Build and Release Maubot Plugin / Release Plugin (push) Failing after 22s
2024-12-03 14:51:24 +01:00
9f8c08e561 Actualiser .gitea/workflows/build-and-release.yml
Some checks failed
Build and Release Maubot Plugin / Build Plugin (push) Successful in 38s
Build and Release Maubot Plugin / Release Plugin (push) Failing after 21s
2024-12-03 14:40:19 +01:00
6126bc3bb1 Actualiser .gitea/workflows/build-and-release.yml 2024-12-03 14:36:52 +01:00
98c84ff171 Actualiser .gitea/workflows/build-and-release.yml
Some checks failed
Build and Release Maubot Plugin / Build Plugin (push) Successful in 1m12s
Build and Release Maubot Plugin / Release Plugin (push) Failing after 34s
2024-12-03 14:32:12 +01:00
MrRaph_
9525d8dc9d feat: added CI
Some checks failed
Build and Release Maubot Plugin / Build Plugin (push) Failing after 2m44s
Build and Release Maubot Plugin / Release Plugin (push) Has been skipped
2024-12-03 14:26:49 +01:00
MrRaph_
f91f0d229a feat: ajout du lien dans la liste 2024-12-03 14:21:18 +01:00
2 changed files with 80 additions and 20 deletions

View File

@@ -0,0 +1,73 @@
name: Build and Release Maubot Plugin
on:
push:
tags:
- '*'
jobs:
build:
name: Build Plugin
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v3
env:
GITEA_TOKEN: ${{ secrets.TOKEN }}
- name: Set up Python
uses: actions/setup-python@v4
env:
GITEA_TOKEN: ${{ secrets.TOKEN }}
with:
python-version: 3.9
- name: Install Dependencies
env:
GITEA_TOKEN: ${{ secrets.TOKEN }}
run: |
python -m pip install --upgrade pip
pip install maubot
- name: Build Plugin
run: |
mbc build .
env:
MB_PLUGIN_DIR: ${{ github.workspace }}
GITEA_TOKEN: ${{ secrets.TOKEN }}
- name: Upload Build Artifact
env:
GITEA_TOKEN: ${{ secrets.TOKEN }}
uses: actions/upload-artifact@v4
with:
name: plugin
path: fr.mrraph.hoarder-bot-*.mbp
- name: Create Release
uses: gitea/create-release@v1
env:
GITEA_TOKEN: ${{ secrets.TOKEN }}
with:
gitea_url: https://git.mrraph.fr # Remplacez par l'URL de votre Gitea
token: ${{ secrets.TOKEN }}
owner: ${{ github.repository_owner }}
repo: ${{ github.event.repository.name }}
tag: ${{ github.ref_name }}
name: "Release ${{ github.ref_name }}"
body: |
## Description
Plugin Maubot compilé à partir du tag `${{ github.ref_name }}`.
draft: false
prerelease: false
- name: Upload Release Asset
env:
GITEA_TOKEN: ${{ secrets.TOKEN }}
uses: actions/upload-release-asset@v1
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: fr.mrraph.hoarder-bot-*.mbp
asset_name: r.mrraph.hoarder-bot-${{ github.ref_name }}.mbp
asset_content_type: application/octet-stream

View File

@@ -78,25 +78,16 @@ class HoarderForwarder(Plugin):
hoarder_url = self.config["hoarder_url"] hoarder_url = self.config["hoarder_url"]
api_key = self.config["hoarder_api_key"] api_key = self.config["hoarder_api_key"]
create_endpoint = f"{hoarder_url}/api/trpc/bookmarks.createBookmark" create_endpoint = f"{hoarder_url}/api/v1/bookmarks"
self.log.info(hoarder_url)
#title = await self.get_page_title(url) # Récupère le titre de la page
if not hoarder_url or not api_key:
self.log.warning("L'URL ou la clé API de Hoarder n'est pas configurée.")
return
headers = { headers = {
"Authorization": f"Bearer {api_key}", "Authorization": f"Bearer {api_key}",
"Content-Type": "application/json", "Content-Type": "application/json",
"Accept": "application/json", "Accept": "application/json",
} }
payload = { payload = {
"json": { "type": "link",
"type": "link", "url": url
"url": url
}
} }
try: try:
@@ -104,9 +95,9 @@ class HoarderForwarder(Plugin):
async with session.post(create_endpoint, json=payload, headers=headers) as response: async with session.post(create_endpoint, json=payload, headers=headers) as response:
if response.status == 200 or response.status == 201 or response.status == 204: if response.status == 200 or response.status == 201 or response.status == 204:
data = await response.json() data = await response.json()
bookmark_id = data[0]["result"]["data"]["json"]["id"] bookmark_id = data["id"]
await self.send_message(evt, f"Bookmark créé avec succès : {bookmark_id}", in_thread=False) await self.send_message(evt, f"Bookmark créé avec succès : {bookmark_id}", in_thread=False)
self.add_bookmark_to_list(bookmark_id, hoarder_list) await self.add_bookmark_to_list(evt, bookmark_id)
return bookmark_id return bookmark_id
else: else:
await self.send_message(evt, f"Erreur lors de la création du bookmark : {response.status}", in_thread=False) await self.send_message(evt, f"Erreur lors de la création du bookmark : {response.status}", in_thread=False)
@@ -202,18 +193,14 @@ class HoarderForwarder(Plugin):
api_key = self.config["hoarder_api_key"] api_key = self.config["hoarder_api_key"]
list_id = await self.ensure_list_exists(evt, self.config["hoarder_list_name"]) list_id = await self.ensure_list_exists(evt, self.config["hoarder_list_name"])
add_to_list_endpoint = f"{hoarder_url}/api/v1/lists/{list_id}/bookmarks" add_to_list_endpoint = f"{hoarder_url}/api/v1/lists/{list_id}/bookmarks/{bookmark_id}"
headers = { headers = {
"Authorization": f"Bearer {api_key}", "Authorization": f"Bearer {api_key}",
"Content-Type": "application/json", "Content-Type": "application/json",
"Accept": "application/json", "Accept": "application/json",
} }
payload = {
"bookmarkId": bookmark_id
}
try: try:
async with aiohttp.ClientSession() as session: async with aiohttp.ClientSession() as session:
async with session.put(add_to_list_endpoint, headers=headers) as response: async with session.put(add_to_list_endpoint, headers=headers) as response: