Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Blueprint/Boilerplate For Python Projects

License

NotificationsYou must be signed in to change notification settings

MartinHeinz/python-project-blueprint

Repository files navigation

Build, Test and Lint ActionPush ActionTest CoverageMaintainabilityQuality Gate Status


If you find this useful, you can support me on Ko-Fi (Donations are always appreciated, but never required):

ko-fi

Blog Posts - More Information About This Repo

You can find more information about this project/repository and how to use it in following blog post:

Quick Start

To use this repository as starter for your project you can runconfigure_project.sh script, which sets up all variables and file names. This way you can avoid configuring and renaming things yourself:

./configure_project.sh MODULE="coolproject" REGISTRY="docker.pkg.github.com/martinheinz/repo-name"

Running

Using Python Interpreter

~ $ make run

Using Docker

Development image:

~ $ make build-dev~ $ docker images --filter "label=name=blueprint"REPOSITORY                                                             TAG                 IMAGE ID            CREATED             SIZEdocker.pkg.github.com/martinheinz/python-project-blueprint/blueprint   3492a40-dirty       acf8d09acce4        28 seconds ago      967MB~ $ docker run acf8d09acce4Hello World...

Production (Distroless) image:

~ $ make build-prod VERSION=0.0.5~ $ docker images --filter "label=version=0.0.5"REPOSITORY                                                             TAG                 IMAGE ID            CREATED             SIZEdocker.pkg.github.com/martinheinz/python-project-blueprint/blueprint   0.0.5               65e6690d9edd        5 seconds ago       86.1MB~ $ docker run 65e6690d9eddHello World...

Testing

Test are ran every time you builddev orprod image. You can also run tests using:

~ $ make test

Pushing to GitHub Package Registry

~ $ docker login docker.pkg.github.com --username MartinHeinzPassword: ......Login Succeeded~ $ make push VERSION=0.0.5

Cleaning

CleanPytest and coverage cache/files:

~ $ make clean

CleanDocker images:

~ $ make docker-clean

Kubernetes

Application can be easily deployed onk8s usingKinD.

To create cluster and/or view status:

~ $ make cluster

To deploy application to local cluster:

~ $ make deploy-local

To get debugging information of running application:

~ $ make cluster-debug

To get remote shell into application pod:

~ $ make cluster-rsh

To apply/updateKubernetes manifest stored ink8s directory:

~ $ make manifest-update

Setting Up Sonar Cloud

  • Navigate tohttps://sonarcloud.io/projects
  • Clickplus in top right corner -> analyze new project
  • Setup withother CI tool ->other ->Linux
  • Copy-Dsonar.projectKey= and-Dsonar.organization=
    • These 2 values go tosonar-project.properties file
  • Click pencil at bottom ofsonar-scanner command
  • Generate token and save it
  • Go to repo ->Settings tab ->Secrets ->Add a new secret
    • name:SONAR_TOKEN
    • value:Previously copied token

Creating Secret Tokens

Token is needed for example forGitHub Package Registry. To create one:

  • Go toSettings tab
  • ClickSecrets
  • ClickAdd a new secret
    • Name:name that will be accessible in GitHub Actions assecrets.NAME
    • Value:value

Resources

About

Blueprint/Boilerplate For Python Projects

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

[8]ページ先頭

©2009-2025 Movatter.jp