mirror of
https://github.com/matrix-org/dendrite.git
synced 2025-12-29 01:33:10 -06:00
Linting
This commit is contained in:
parent
8d674f2118
commit
f6e5331a48
|
|
@ -84,10 +84,6 @@ ENV SERVER_NAME=localhost
|
||||||
EXPOSE 8008 8448
|
EXPOSE 8008 8448
|
||||||
CMD /build/run_dendrite.sh `
|
CMD /build/run_dendrite.sh `
|
||||||
|
|
||||||
func ptr(in string) *string {
|
|
||||||
return &in
|
|
||||||
}
|
|
||||||
|
|
||||||
// downloadArchive downloads an arbitrary github archive of the form:
|
// downloadArchive downloads an arbitrary github archive of the form:
|
||||||
// https://github.com/matrix-org/dendrite/archive/v0.3.11.tar.gz
|
// https://github.com/matrix-org/dendrite/archive/v0.3.11.tar.gz
|
||||||
// and re-tarballs it without the top-level directory which contains branch information. It inserts
|
// and re-tarballs it without the top-level directory which contains branch information. It inserts
|
||||||
|
|
@ -99,6 +95,7 @@ func downloadArchive(cli *http.Client, tmpDir, archiveURL string, dockerfile []b
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
// nolint:errcheck
|
||||||
defer resp.Body.Close()
|
defer resp.Body.Close()
|
||||||
if resp.StatusCode != 200 {
|
if resp.StatusCode != 200 {
|
||||||
return nil, fmt.Errorf("got HTTP %d", resp.StatusCode)
|
return nil, fmt.Errorf("got HTTP %d", resp.StatusCode)
|
||||||
|
|
@ -106,6 +103,7 @@ func downloadArchive(cli *http.Client, tmpDir, archiveURL string, dockerfile []b
|
||||||
if err = os.Mkdir(tmpDir, os.ModePerm); err != nil {
|
if err = os.Mkdir(tmpDir, os.ModePerm); err != nil {
|
||||||
return nil, fmt.Errorf("failed to make temporary directory: %s", err)
|
return nil, fmt.Errorf("failed to make temporary directory: %s", err)
|
||||||
}
|
}
|
||||||
|
// nolint:errcheck
|
||||||
defer os.RemoveAll(tmpDir)
|
defer os.RemoveAll(tmpDir)
|
||||||
// dump the tarball temporarily, stripping the top-level directory
|
// dump the tarball temporarily, stripping the top-level directory
|
||||||
err = extract.Archive(context.Background(), resp.Body, tmpDir, func(inPath string) string {
|
err = extract.Archive(context.Background(), resp.Body, tmpDir, func(inPath string) string {
|
||||||
|
|
@ -148,6 +146,7 @@ func buildDendrite(httpClient *http.Client, dockerClient *client.Client, tmpDir,
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return "", fmt.Errorf("failed to start building image: %s", err)
|
return "", fmt.Errorf("failed to start building image: %s", err)
|
||||||
}
|
}
|
||||||
|
// nolint:errcheck
|
||||||
defer res.Body.Close()
|
defer res.Body.Close()
|
||||||
decoder := json.NewDecoder(res.Body)
|
decoder := json.NewDecoder(res.Body)
|
||||||
// {"aux":{"ID":"sha256:247082c717963bc2639fc2daed08838d67811ea12356cd4fda43e1ffef94f2eb"}}
|
// {"aux":{"ID":"sha256:247082c717963bc2639fc2daed08838d67811ea12356cd4fda43e1ffef94f2eb"}}
|
||||||
|
|
@ -197,7 +196,7 @@ func getAndSortVersionsFromGithub(httpClient *http.Client) (semVers []*semver.Ve
|
||||||
return semVers, nil
|
return semVers, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func calculateVersions(cli *http.Client, from, to string) ([]string, error) {
|
func calculateVersions(cli *http.Client, from, to string) []string {
|
||||||
semvers, err := getAndSortVersionsFromGithub(cli)
|
semvers, err := getAndSortVersionsFromGithub(cli)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatalf("failed to collect semvers from github: %s", err)
|
log.Fatalf("failed to collect semvers from github: %s", err)
|
||||||
|
|
@ -222,7 +221,7 @@ func calculateVersions(cli *http.Client, from, to string) ([]string, error) {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatalf("invalid --to: %s", err)
|
log.Fatalf("invalid --to: %s", err)
|
||||||
}
|
}
|
||||||
i := len(semvers) - 1
|
var i int
|
||||||
for i = len(semvers) - 1; i >= 0; i-- {
|
for i = len(semvers) - 1; i >= 0; i-- {
|
||||||
if semvers[i].GreaterThan(toVer) {
|
if semvers[i].GreaterThan(toVer) {
|
||||||
continue
|
continue
|
||||||
|
|
@ -238,7 +237,7 @@ func calculateVersions(cli *http.Client, from, to string) ([]string, error) {
|
||||||
if to == "HEAD" {
|
if to == "HEAD" {
|
||||||
versions = append(versions, "HEAD")
|
versions = append(versions, "HEAD")
|
||||||
}
|
}
|
||||||
return versions, nil
|
return versions
|
||||||
}
|
}
|
||||||
|
|
||||||
func buildDendriteImages(httpClient *http.Client, dockerClient *client.Client, baseTempDir string, concurrency int, branchOrTagNames []string) map[string]string {
|
func buildDendriteImages(httpClient *http.Client, dockerClient *client.Client, baseTempDir string, concurrency int, branchOrTagNames []string) map[string]string {
|
||||||
|
|
@ -342,10 +341,13 @@ func runImage(dockerClient *client.Client, volumeName, version, imageID string)
|
||||||
return baseURL, containerID, lastErr
|
return baseURL, containerID, lastErr
|
||||||
}
|
}
|
||||||
|
|
||||||
func destroyContainer(dockerClient *client.Client, containerID string) error {
|
func destroyContainer(dockerClient *client.Client, containerID string) {
|
||||||
return dockerClient.ContainerRemove(context.TODO(), containerID, types.ContainerRemoveOptions{
|
err := dockerClient.ContainerRemove(context.TODO(), containerID, types.ContainerRemoveOptions{
|
||||||
Force: true,
|
Force: true,
|
||||||
})
|
})
|
||||||
|
if err != nil {
|
||||||
|
log.Printf("failed to remove container %s : %s", containerID, err)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func loadAndRunTests(dockerClient *client.Client, volumeName, v string, branchToImageID map[string]string) error {
|
func loadAndRunTests(dockerClient *client.Client, volumeName, v string, branchToImageID map[string]string) error {
|
||||||
|
|
@ -376,7 +378,7 @@ func main() {
|
||||||
httpClient := &http.Client{
|
httpClient := &http.Client{
|
||||||
Timeout: 60 * time.Second,
|
Timeout: 60 * time.Second,
|
||||||
}
|
}
|
||||||
dockerClient, err := client.NewEnvClient()
|
dockerClient, err := client.NewClientWithOpts(client.FromEnv)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatalf("failed to make docker client: %s", err)
|
log.Fatalf("failed to make docker client: %s", err)
|
||||||
}
|
}
|
||||||
|
|
@ -384,10 +386,7 @@ func main() {
|
||||||
flag.Usage()
|
flag.Usage()
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
versions, err := calculateVersions(httpClient, *flagFrom, *flagTo)
|
versions := calculateVersions(httpClient, *flagFrom, *flagTo)
|
||||||
if err != nil {
|
|
||||||
log.Fatalf("failed to calculate versions to build: %s", err)
|
|
||||||
}
|
|
||||||
log.Printf("Testing dendrite versions: %v\n", versions)
|
log.Printf("Testing dendrite versions: %v\n", versions)
|
||||||
|
|
||||||
branchToImageID := buildDendriteImages(httpClient, dockerClient, *flagTempDir, *flagBuildConcurrency, versions)
|
branchToImageID := buildDendriteImages(httpClient, dockerClient, *flagTempDir, *flagBuildConcurrency, versions)
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@ func compress(src string, buf io.Writer) error {
|
||||||
tw := tar.NewWriter(zr)
|
tw := tar.NewWriter(zr)
|
||||||
|
|
||||||
// walk through every file in the folder
|
// walk through every file in the folder
|
||||||
filepath.Walk(src, func(file string, fi os.FileInfo, err error) error {
|
_ = filepath.Walk(src, func(file string, fi os.FileInfo, e error) error {
|
||||||
// generate tar header
|
// generate tar header
|
||||||
header, err := tar.FileInfoHeader(fi, file)
|
header, err := tar.FileInfoHeader(fi, file)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
||||||
|
|
@ -96,13 +96,13 @@ func runTests(baseURL, branchName string) error {
|
||||||
})
|
})
|
||||||
if err != nil { // this is okay and expected if the room already exists and the aliases clash
|
if err != nil { // this is okay and expected if the room already exists and the aliases clash
|
||||||
// try to join it
|
// try to join it
|
||||||
_, domain, err := gomatrixserverlib.SplitID('@', users[0].userID)
|
_, domain, err2 := gomatrixserverlib.SplitID('@', users[0].userID)
|
||||||
if err != nil {
|
if err2 != nil {
|
||||||
return fmt.Errorf("failed to split user ID: %s, %s", users[0].userID, err)
|
return fmt.Errorf("failed to split user ID: %s, %s", users[0].userID, err2)
|
||||||
}
|
}
|
||||||
joinRoomResp, err := users[0].client.JoinRoom(fmt.Sprintf("#global:%s", domain), "", nil)
|
joinRoomResp, err2 := users[0].client.JoinRoom(fmt.Sprintf("#global:%s", domain), "", nil)
|
||||||
if err != nil {
|
if err2 != nil {
|
||||||
return fmt.Errorf("alice failed to join public room: %s", err)
|
return fmt.Errorf("alice failed to join public room: %s", err2)
|
||||||
}
|
}
|
||||||
publicRoomID = joinRoomResp.RoomID
|
publicRoomID = joinRoomResp.RoomID
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue