Moved token to env variable

This commit is contained in:
2023-08-19 15:45:03 +02:00
parent 735abfa48f
commit 0ed95540c6
2 changed files with 20 additions and 1 deletions

14
README.md Normal file
View File

@@ -0,0 +1,14 @@
# Github Latest Release Exporter
This is a simple service that fetches the latest version of software from github and exposes it as a metric for Prometheus to scrape.
Just query the endpoint with ```owner/repository``, and you will get a metric back.
## Development and local testing
```bash
docker buildx build -t latest_release_exporter .
docker run --name latest_release_exporter -d -p 8000:8000 -e GITHUB_TOKEN=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 latest_release_exporter
curl http://localhost:8000/metrics?repo=prometheus/prometheus
docker stop latest_release_exporter
docker rm latest_release_exporter
```

View File

@@ -1,3 +1,5 @@
import os
import sys
import requests
from flask import Flask, request
from prometheus_client import generate_latest, Gauge, CollectorRegistry
@@ -17,7 +19,10 @@ github_latest_release_metric = Gauge(
)
# GitHub API token (replace with your actual token)
github_api_token = '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'
github_api_token = os.environ.get('GITHUB_TOKEN')
if github_api_token is None:
sys.exit("Env variable GITHUB_TOKEN not found!")
# Function to fetch the latest release version or the latest tag from GitHub
def get_latest_version(repo_url):