aboutsummaryrefslogtreecommitdiff
path: root/git2d_deploy.go
blob: ba63a1b6d4c603ae6426135646037287a2f5d1db (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

// SPDX-License-Identifier: AGPL-3.0-only
// SPDX-FileCopyrightText: Copyright (c) 2025 Runxi Yu <https://runxiyu.org>

package main

import (
	"io"
	"io/fs"
	"os"
)

func (s *server) deployGit2D() (err error) {
	var srcFD fs.File
	var dstFD *os.File

	if srcFD, err = embeddedResourcesFS.Open("git2d/git2d"); err != nil {
		return err
	}
	defer srcFD.Close()

	if dstFD, err = os.OpenFile(s.config.Git.DaemonPath, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0o755); err != nil {
		return err
	}
	defer dstFD.Close()

	_, err = io.Copy(dstFD, srcFD)

	return err
}