Skip to content

Commit

Permalink
Add github workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
Jakob-98 committed Jul 31, 2023
1 parent d4577d8 commit 0fab75a
Show file tree
Hide file tree
Showing 7 changed files with 189 additions and 60 deletions.
118 changes: 59 additions & 59 deletions .github/workflows/main_jsites.yml
Original file line number Diff line number Diff line change
@@ -1,63 +1,63 @@
# Docs for the Azure Web Apps Deploy action: https://github.com/Azure/webapps-deploy
# More GitHub Actions for Azure: https://github.com/Azure/actions
# More info on Python, GitHub Actions, and Azure App Service: https://aka.ms/python-webapps-actions

name: Build and deploy Python app to Azure Web App - jsites

on:
push:
branches:
- main
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2

- name: Set up Python version
uses: actions/setup-python@v1
with:
python-version: '3.10'

- name: Create and start virtual environment
run: |
python -m venv venv
source venv/bin/activate
# # Docs for the Azure Web Apps Deploy action: https://github.com/Azure/webapps-deploy
# # More GitHub Actions for Azure: https://github.com/Azure/actions
# # More info on Python, GitHub Actions, and Azure App Service: https://aka.ms/python-webapps-actions

# name: Build and deploy Python app to Azure Web App - jsites

# on:
# push:
# branches:
# - main
# workflow_dispatch:

# jobs:
# build:
# runs-on: ubuntu-latest

# steps:
# - uses: actions/checkout@v2

# - name: Set up Python version
# uses: actions/setup-python@v1
# with:
# python-version: '3.10'

# - name: Create and start virtual environment
# run: |
# python -m venv venv
# source venv/bin/activate

- name: Install dependencies
run: pip install -r requirements.txt
# - name: Install dependencies
# run: pip install -r requirements.txt

# Optional: Add step to run tests here (PyTest, Django test suites, etc.)
# # Optional: Add step to run tests here (PyTest, Django test suites, etc.)

- name: Upload artifact for deployment jobs
uses: actions/upload-artifact@v2
with:
name: python-app
path: |
.
!venv/
deploy:
runs-on: ubuntu-latest
needs: build
environment:
name: 'Production'
url: ${{ steps.deploy-to-webapp.outputs.webapp-url }}

steps:
- name: Download artifact from build job
uses: actions/download-artifact@v2
with:
name: python-app
path: .
# - name: Upload artifact for deployment jobs
# uses: actions/upload-artifact@v2
# with:
# name: python-app
# path: |
# .
# !venv/

# deploy:
# runs-on: ubuntu-latest
# needs: build
# environment:
# name: 'Production'
# url: ${{ steps.deploy-to-webapp.outputs.webapp-url }}

# steps:
# - name: Download artifact from build job
# uses: actions/download-artifact@v2
# with:
# name: python-app
# path: .

- name: 'Deploy to Azure Web App'
uses: azure/webapps-deploy@v2
id: deploy-to-webapp
with:
app-name: 'jsites'
slot-name: 'Production'
publish-profile: ${{ secrets.AZUREAPPSERVICE_PUBLISHPROFILE_FCA8F0C292AD4DF08FFCE1D0F6D25450 }}
# - name: 'Deploy to Azure Web App'
# uses: azure/webapps-deploy@v2
# id: deploy-to-webapp
# with:
# app-name: 'jsites'
# slot-name: 'Production'
# publish-profile: ${{ secrets.AZUREAPPSERVICE_PUBLISHPROFILE_FCA8F0C292AD4DF08FFCE1D0F6D25450 }}
53 changes: 53 additions & 0 deletions backend/.github/workflows/azure_deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
name: Build and deploy Python app to Azure Web App - jsites

on:
push:
branches:
- main
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2

- name: Set up Python version
uses: actions/setup-python@v2
with:
python-version: '3.10'

- name: Install dependencies
run: pip install -r requirements.txt

# Optional: Add step to run tests here (PyTest, Django test suites, etc.)

- name: Upload artifact for deployment jobs
uses: actions/upload-artifact@v2
with:
name: python-app
path: .

deploy:
runs-on: ubuntu-latest
needs: build
environment:
name: 'Production'
url: ${{ steps.deploy-to-webapp.outputs.webapp-url }}

steps:
- name: Download artifact from build job
uses: actions/download-artifact@v2
with:
name: python-app
path: .

- name: 'Deploy to Azure Web App'
uses: azure/webapps-deploy@v2
id: deploy-to-webapp
with:
app-name: 'jsites'
slot-name: 'production'
publish-profile: ${{ secrets.AZUREAPPSERVICE_PUBLISHPROFILE_FCA8F0C292AD4DF08FFCE1D0F6D25450 }}
startup-command: 'gunicorn --bind=0.0.0.0 --timeout 600 app:app'
25 changes: 25 additions & 0 deletions backend/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
.DS_Store
.env
.flaskenv
*.pyc
*.pyo
env/
venv/
.venv/
env*
dist/
build/
*.egg
*.egg-info/
.tox/
.cache/
.pytest_cache/
.idea/
docs/_build/
.vscode

# Coverage reports
htmlcov/
.coverage
.coverage.*
*,cover
46 changes: 46 additions & 0 deletions backend/app.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
import os
import requests
from flask import Flask, jsonify
from flask_cors import CORS

app = Flask(__name__)
CORS(app)

@app.route('/githubdata', methods=['GET'])
def get_github_data():
query = """
query {
viewer {
pinnedItems(first: 6, types: [REPOSITORY]) {
nodes {
... on Repository {
id
name
url
description
stargazerCount
forkCount
primaryLanguage {
name
}
}
}
}
}
}"""

url = 'https://api.github.com/graphql'
headers = {
'Content-Type': 'application/json',
'Authorization': f'Bearer {os.environ.get("GITHUB_TOKEN")}',
}

response = requests.post(url, json={'query': query}, headers=headers)
return jsonify(response.json())

@app.route('/health', methods=['GET'])
def healthcheck():
return jsonify({'status': 'ok'})

if __name__ == "__main__":
app.run(debug=True)
4 changes: 4 additions & 0 deletions backend/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
flask
requests
flask-cors
gunicorn
1 change: 1 addition & 0 deletions backend/startup.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
gunicorn --bind=0.0.0.0 --timeout 600 app:app
2 changes: 1 addition & 1 deletion gatsbytes/src/components/header.module.css
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
.header {
background-color: #f5f5f5;
background-color: var(--background-color);
padding: 10px 20px;
}

Expand Down

0 comments on commit 0fab75a

Please sign in to comment.