Merge Github Workflow.
Support Loading Archived Tasks
This commit is contained in:
commit
89b7664176
4 changed files with 89 additions and 43 deletions
82
.github/workflows/docker-image-release.yml
vendored
82
.github/workflows/docker-image-release.yml
vendored
|
@ -1,52 +1,52 @@
|
|||
name: Build and Push Docker Image
|
||||
# name: Build and Push Docker Image
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
# on:
|
||||
# push:
|
||||
# branches:
|
||||
# - main
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Build and Push Docker Image
|
||||
runs-on: ubuntu-latest
|
||||
# jobs:
|
||||
# build:
|
||||
# name: Build and Push Docker Image
|
||||
# runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
# Checkout the code from the repository
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
# steps:
|
||||
# # Checkout the code from the repository
|
||||
# - name: Checkout repository
|
||||
# uses: actions/checkout@v3
|
||||
|
||||
# # Download the latest release binary from GitHub releases
|
||||
# - name: Download latest release binary
|
||||
# run: |
|
||||
# latest_release=$(curl --silent "https://api.github.com/repos/donetick/donetick/releases/latest" | jq -r '.tag_name')
|
||||
# curl -L "https://github.com/donetick/donetick/releases/download/${latest_release}/donetick_Linux_x86_64.tar.gz" -o donetick_Linux_x86_64.tar.gz
|
||||
# tar -xzf donetick_Linux_x86_64.tar.gz
|
||||
# chmod +x ./donetick
|
||||
# # # Download the latest release binary from GitHub releases
|
||||
# # - name: Download latest release binary
|
||||
# # run: |
|
||||
# # latest_release=$(curl --silent "https://api.github.com/repos/donetick/donetick/releases/latest" | jq -r '.tag_name')
|
||||
# # curl -L "https://github.com/donetick/donetick/releases/download/${latest_release}/donetick_Linux_x86_64.tar.gz" -o donetick_Linux_x86_64.tar.gz
|
||||
# # tar -xzf donetick_Linux_x86_64.tar.gz
|
||||
# # chmod +x ./donetick
|
||||
|
||||
|
||||
|
||||
# Log in to Docker Hub
|
||||
- name: Log in to Docker Hub
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
# # Log in to Docker Hub
|
||||
# - name: Log in to Docker Hub
|
||||
# uses: docker/login-action@v2
|
||||
# with:
|
||||
# username: ${{ secrets.DOCKER_USERNAME }}
|
||||
# password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
# # Log in to GitHub Container Registry
|
||||
# - name: Login to GitHub Container Registry
|
||||
# uses: docker/login-action@v3.3.0
|
||||
# with:
|
||||
# registry: ghcr.io
|
||||
# username: ${{ github.repository_owner }}
|
||||
# password: ${{ secrets.GITHUB_TOKEN }}
|
||||
# # # Log in to GitHub Container Registry
|
||||
# # - name: Login to GitHub Container Registry
|
||||
# # uses: docker/login-action@v3.3.0
|
||||
# # with:
|
||||
# # registry: ghcr.io
|
||||
# # username: ${{ github.repository_owner }}
|
||||
# # password: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
|
||||
# Build and tag Docker image
|
||||
- name: Build Docker image
|
||||
run: |
|
||||
docker build -t ${{ secrets.DOCKER_USERNAME }}/donetick:latest .
|
||||
# # Build and tag Docker image
|
||||
# - name: Build Docker image
|
||||
# run: |
|
||||
# docker build -t ${{ secrets.DOCKER_USERNAME }}/donetick:latest .
|
||||
|
||||
# Push Docker image
|
||||
- name: Push Docker image
|
||||
run: |
|
||||
docker push ${{ secrets.DOCKER_USERNAME }}/donetick:latest
|
||||
# # Push Docker image
|
||||
# - name: Push Docker image
|
||||
# run: |
|
||||
# docker push ${{ secrets.DOCKER_USERNAME }}/donetick:latest
|
||||
|
|
19
.github/workflows/go-release.yml
vendored
19
.github/workflows/go-release.yml
vendored
|
@ -10,6 +10,7 @@ on:
|
|||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
name: Build and Push Docker Image
|
||||
steps:
|
||||
- name: Checkout Code
|
||||
uses: actions/checkout@v4
|
||||
|
@ -57,4 +58,20 @@ jobs:
|
|||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
# Your GoReleaser Pro key, if you are using the 'goreleaser-pro' distribution
|
||||
# GORELEASER_KEY: ${{ secrets.GORELEASER_KEY }}
|
||||
|
||||
|
||||
# Log in to Docker Hub
|
||||
- name: Log in to Docker Hub
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
# Build and tag Docker image
|
||||
- name: Build Docker image
|
||||
run: |
|
||||
docker build -t ${{ secrets.DOCKER_USERNAME }}/donetick:latest .
|
||||
|
||||
# Push Docker image
|
||||
- name: Push Docker image
|
||||
run: |
|
||||
docker push ${{ secrets.DOCKER_USERNAME }}/donetick:latest
|
|
@ -98,6 +98,26 @@ func (h *Handler) getChores(c *gin.Context) {
|
|||
})
|
||||
}
|
||||
|
||||
func (h *Handler) getArchivedChores(c *gin.Context) {
|
||||
u, ok := auth.CurrentUser(c)
|
||||
if !ok {
|
||||
c.JSON(500, gin.H{
|
||||
"error": "Error getting current circle",
|
||||
})
|
||||
return
|
||||
}
|
||||
chores, err := h.choreRepo.GetArchivedChores(c, u.CircleID, u.ID)
|
||||
if err != nil {
|
||||
c.JSON(500, gin.H{
|
||||
"error": "Error getting chores",
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
c.JSON(200, gin.H{
|
||||
"res": chores,
|
||||
})
|
||||
}
|
||||
func (h *Handler) getChore(c *gin.Context) {
|
||||
|
||||
currentUser, ok := auth.CurrentUser(c)
|
||||
|
@ -1276,6 +1296,7 @@ func Routes(router *gin.Engine, h *Handler, auth *jwt.GinJWTMiddleware) {
|
|||
choresRoutes.Use(auth.MiddlewareFunc())
|
||||
{
|
||||
choresRoutes.GET("/", h.getChores)
|
||||
choresRoutes.GET("/archived", h.getArchivedChores)
|
||||
choresRoutes.PUT("/", h.editChore)
|
||||
choresRoutes.PUT("/:id/priority", h.updatePriority)
|
||||
choresRoutes.POST("/", h.createChore)
|
||||
|
|
|
@ -52,7 +52,15 @@ func (r *ChoreRepository) GetChore(c context.Context, choreID int) (*chModel.Cho
|
|||
func (r *ChoreRepository) GetChores(c context.Context, circleID int, userID int) ([]*chModel.Chore, error) {
|
||||
var chores []*chModel.Chore
|
||||
// if err := r.db.WithContext(c).Preload("Assignees").Where("is_active = ?", true).Order("next_due_date asc").Find(&chores, "circle_id = ?", circleID).Error; err != nil {
|
||||
if err := r.db.WithContext(c).Preload("Assignees").Preload("LabelsV2").Joins("left join chore_assignees on chores.id = chore_assignees.chore_id").Where("chores.circle_id = ? AND (chores.created_by = ? OR chore_assignees.user_id = ?)", circleID, userID, userID).Group("chores.id").Order("next_due_date asc").Find(&chores, "circle_id = ?", circleID).Error; err != nil {
|
||||
if err := r.db.WithContext(c).Preload("Assignees").Preload("LabelsV2").Joins("left join chore_assignees on chores.id = chore_assignees.chore_id").Where("chores.circle_id = ? AND (chores.created_by = ? OR chore_assignees.user_id = ?)", circleID, userID, userID).Group("chores.id").Order("next_due_date asc").Find(&chores, "circle_id = ? AND is_active = ?", circleID, true).Error; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return chores, nil
|
||||
}
|
||||
|
||||
func (r *ChoreRepository) GetArchivedChores(c context.Context, circleID int, userID int) ([]*chModel.Chore, error) {
|
||||
var chores []*chModel.Chore
|
||||
if err := r.db.WithContext(c).Preload("Assignees").Preload("LabelsV2").Joins("left join chore_assignees on chores.id = chore_assignees.chore_id").Where("chores.circle_id = ? AND (chores.created_by = ? OR chore_assignees.user_id = ?)", circleID, userID, userID).Group("chores.id").Order("next_due_date asc").Find(&chores, "circle_id = ? AND is_active = ?", circleID, false).Error; err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return chores, nil
|
||||
|
|
Loading…
Add table
Reference in a new issue