Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(229)

Unified Diff: go/src/infra/tools/cipd/common.go

Issue 1129043003: cipd: Refactor client to make it more readable. (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « go/src/infra/tools/cipd/clock_test.go ('k') | go/src/infra/tools/cipd/common/common.go » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: go/src/infra/tools/cipd/common.go
diff --git a/go/src/infra/tools/cipd/common.go b/go/src/infra/tools/cipd/common.go
deleted file mode 100644
index e4c2859eb2f84ce73d9bbc8f6d6a23ab3e01a9b2..0000000000000000000000000000000000000000
--- a/go/src/infra/tools/cipd/common.go
+++ /dev/null
@@ -1,118 +0,0 @@
-// Copyright 2014 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-package cipd
-
-import (
- "encoding/json"
- "fmt"
- "io"
- "io/ioutil"
- "regexp"
- "strings"
-
- "infra/libs/build"
-)
-
-// Name of the directory inside the package reserved for cipd stuff.
-const packageServiceDir = ".cipdpkg"
-
-// Name of the directory inside an installation root reserved for cipd stuff.
-const siteServiceDir = ".cipd"
-
-// packageNameRe is a regular expression for a package name: <word>/<word/<word>
-// Package names must be lower case.
-var packageNameRe = regexp.MustCompile(`^([a-z0-9_\-]+/)*[a-z0-9_\-]+$`)
-
-// instanceTagKeyRe is a regular expression for a tag key.
-var instanceTagKeyRe = regexp.MustCompile(`^[a-z0-9_\-]+$`)
-
-// Name of the manifest file inside the package.
-const manifestName = packageServiceDir + "/manifest.json"
-
-// Format version to write to the manifest file.
-const manifestFormatVersion = "1"
-
-// Manifest defines structure of manifest.json file.
-type Manifest struct {
- FormatVersion string `json:"format_version"`
- PackageName string `json:"package_name"`
-}
-
-// ValidatePackageName returns error if a string doesn't look like a valid package name.
-func ValidatePackageName(name string) error {
- if !packageNameRe.MatchString(name) {
- return fmt.Errorf("Invalid package name: %s", name)
- }
- return nil
-}
-
-// ValidateInstanceID returns error if a string doesn't look like a valid package instance id.
-func ValidateInstanceID(s string) error {
- // Instance id is SHA1 hex digest currently.
- if len(s) != 40 {
- return fmt.Errorf("Not a valid package instance ID \"%s\": not 40 bytes", s)
- }
- for _, c := range s {
- if !((c >= '0' && c <= '9') || (c >= 'a' && c <= 'f')) {
- return fmt.Errorf("Not a valid package instance ID \"%s\": wrong char %c", s, c)
- }
- }
- return nil
-}
-
-// ValidateInstanceTag returns error if a string doesn't look like a valid tag.
-func ValidateInstanceTag(t string) error {
- chunks := strings.SplitN(t, ":", 2)
- if len(chunks) != 2 {
- return fmt.Errorf("The string %q doesn't look like a tag (a key:value pair)", t)
- }
- if len(t) > 400 {
- return fmt.Errorf("The tag is too long: %q", t)
- }
- if !instanceTagKeyRe.MatchString(chunks[0]) {
- return fmt.Errorf("Invalid tag key in %q. Should be a lowercase word.", t)
- }
- return nil
-}
-
-// DefaultServiceURL returns URL to a backend to use by default.
-func DefaultServiceURL() string {
- if build.ReleaseBuild {
- return "https://chrome-infra-packages.appspot.com"
- }
- return "https://chrome-infra-packages-dev.appspot.com"
-}
-
-// readManifest reads and decodes manifest JSON from io.Reader.
-func readManifest(r io.Reader) (Manifest, error) {
- blob, err := ioutil.ReadAll(r)
- if err != nil {
- return Manifest{}, err
- }
- manifest := Manifest{}
- err = json.Unmarshal(blob, &manifest)
- if err != nil {
- return Manifest{}, err
- }
- return manifest, nil
-}
-
-// writeManifest encodes and writes manifest JSON to io.Writer.
-func writeManifest(m *Manifest, w io.Writer) error {
- data, err := json.MarshalIndent(m, "", " ")
- if err != nil {
- return err
- }
- _, err = w.Write(data)
- return err
-}
-
-// userAgent returns user agent string to send with each request.
-func userAgent() string {
- if build.ReleaseBuild {
- return "cipd 1.0 release"
- }
- return "cipd 1.0 testing"
-}
« no previous file with comments | « go/src/infra/tools/cipd/clock_test.go ('k') | go/src/infra/tools/cipd/common/common.go » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698