# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4

PortSystem          1.0
PortGroup           golang 1.0

go.setup            github.com/Shopify/toxiproxy 2.12.0 v
categories          net
maintainers         {amake @amake} openmaintainer
license             MIT

description         Toxiproxy is a framework for simulating network conditions.

long_description    Toxiproxy is a framework for simulating network conditions. \
    It's made specifically to work in testing, CI and development environments, \
    supporting deterministic tampering with connections, but with support for \
    randomized chaos and customization. Toxiproxy is the tool you need to prove \
    with tests that your application doesn't have single points of failure.

checksums           ${distname}${extract.suffix} \
                        rmd160  215c6263b193ba96abaf112410cefec7d4277aa3 \
                        sha256  9332a884c559fbcf96cbe2c1b46312eb1e1b7191eb9a73a3d3b857d4e9789eb1 \
                        size    73037

go.vendors          gopkg.in/yaml.v3 \
                        lock    v3.0.1 \
                        rmd160  e85ac1368fb7f9ef945b7fd7bd608a1f0d261c12 \
                        sha256  f3ea6be3f405ec25f8799773355aba54f8831d11f5315a01155bdc69b92eca7b \
                        size    91208 \
                    gopkg.in/tomb.v1 \
                        lock    dd632973f1e7 \
                        rmd160  ae07f5ddbbc6afc772d6dc5273bb72eaba50529a \
                        sha256  91c562a4e31c89d13e5391143ff653231fc2d80562743db89ce2172ad8f81008 \
                        size    3636 \
                    google.golang.org/protobuf \
                        repo    github.com/protocolbuffers/protobuf-go \
                        lock    v1.36.1 \
                        rmd160  01714936c1a6dce435203e1c5b9fe360866f2605 \
                        sha256  c4be1d4a4ff48dae2defb89d61402c18a9ce44362ffad9e89b79feda36ce7055 \
                        size    1913394 \
                    golang.org/x/term \
                        lock    v0.30.0 \
                        rmd160  edf3f8691b082c6ff338c9b3c0ca8d21dda9ab72 \
                        sha256  61e9d7457a3d9feafe71027a10dda3727069f671fd8f55140c2ab1deb39b45d1 \
                        size    14693 \
                    golang.org/x/sys \
                        lock    v0.31.0 \
                        rmd160  9efc04dad397a752840a05dabbe4ac2ff03711e2 \
                        sha256  eba2a88050495f2504cf2c49316fedf848703e33ac6cd46393e5b6a43ac02536 \
                        size    1523498 \
                    github.com/xrash/smetrics \
                        lock    686a1a2994c1 \
                        rmd160  6eeddadc807945dd735d28b8e19a239a242d5ae4 \
                        sha256  ad89cc64ab0ee4f8c8364b85027e507ce99a8e1a5d0ccda24c623be30757d918 \
                        size    1823558 \
                    github.com/urfave/cli \
                        lock    v2.27.6 \
                        rmd160  955b534f7cc0bea403b138abd970aa81be0ea6d5 \
                        sha256  0e68631caf7c4036f0cfc76fe9b36c3b76c4e485f85522e8d98499cca62559b6 \
                        size    3485878 \
                    github.com/stretchr/testify \
                        lock    v1.10.0 \
                        rmd160  43f142561513d8f10ce4971bf91cabbad9a021cc \
                        sha256  be33d85711f2b92b7269a39574af64701ed5b2c4e4446547ea75ea046ec97629 \
                        size    112769 \
                    github.com/russross/blackfriday \
                        lock    v2.1.0 \
                        rmd160  c42a9332a2c2f3074c6f7e8d37a58d6148d2af08 \
                        sha256  c4df56f2012a7d16471418245e78b5790569e27bbe8d72a860d7117a801a7fae \
                        size    92950 \
                    github.com/rs/zerolog \
                        lock    v1.33.0 \
                        rmd160  0696d5dd225e11f8db7f7cbb51bce5ef68f270fb \
                        sha256  55f909d6046d6f7b89e17388a2fdbc67703d3f9cb39e64beb4086bb355c30b88 \
                        size    216070 \
                    github.com/rs/xid \
                        lock    v1.5.0 \
                        rmd160  4557993bd48722fa80d3c209bc8dfc6dbaa20d45 \
                        sha256  a115974291292b0d4c4dd7ecca75439a3199c19086ce2320f4b0368a90f88d15 \
                        size    11533 \
                    github.com/prometheus/procfs \
                        lock    v0.15.1 \
                        rmd160  ab8c6ed74bad7c9ffda705e2fedd9f06a732988b \
                        sha256  6db59a5fda2a42cd6ae8286bc4175735b422862dd080101be8af3ce46df2aec4 \
                        size    243713 \
                    github.com/prometheus/common \
                        lock    v0.62.0 \
                        rmd160  a75b4b251e418d5f73a8d783790d8dded58c65cd \
                        sha256  ede4d8370d955f6c09ad661c8cced140f960a9f61fc9cc71eec026ea65a63d9b \
                        size    144747 \
                    github.com/prometheus/client_model \
                        lock    v0.6.1 \
                        rmd160  5aa458633e8faa71540f5305f31ff639e2a85ddb \
                        sha256  151716d1240be0cf6b0d6f0645bb06e5fc3ac9fd97549fe89f17c4ae0e08f83f \
                        size    17398 \
                    github.com/prometheus/client_golang \
                        lock    v1.21.1 \
                        rmd160  fa9b2ecb1eb546c1aaf72763ffa2d527b3e5fd27 \
                        sha256  0be7d92470848c251522a51f863c0a5f2132503d46f3ab922bf7620e1caea92b \
                        size    1095430 \
                    github.com/pmezard/go-difflib \
                        lock    v1.0.0 \
                        rmd160  fc879bfbdef9e3ff50844def58404e2b5a613ab8 \
                        sha256  7cd492737641847266115f3060489a67f63581e521a8ec51efbc280c33fc991f \
                        size    11409 \
                    github.com/munnerz/goautoneg \
                        lock    a7dc8b61c822 \
                        rmd160  5d779614a17cd75c1ca4294a004c487ca3d152bf \
                        sha256  eb0c0a7182feac6df955be4b48525840f491febd3ddb3f1febd0806cc54d5c09 \
                        size    2817 \
                    github.com/mattn/go-isatty \
                        lock    v0.0.20 \
                        rmd160  ef20ccdf87de8b704c0c7118625b2beb31d8f1b4 \
                        sha256  397549e98cf5d40df585f31dc7902f017c37be88c64311dd2b4aeccab4009949 \
                        size    4717 \
                    github.com/mattn/go-colorable \
                        lock    v0.1.13 \
                        rmd160  c9e8ab9d0773c0984f36235e3c9f8c033552ac1a \
                        sha256  0cd9a951799c1a9f999df56e4b020170fa887456049c274aae6262d9ae3f7424 \
                        size    9778 \
                    github.com/kylelemons/godebug \
                        lock    v1.1.0 \
                        rmd160  917ada648e70d2e339b8ff36d2f86882d0d2efa1 \
                        sha256  6151c487936ab72cffbf804626228083c9b3abfc908a2bb41b1160e1e5780aaf \
                        size    17641 \
                    github.com/klauspost/compress \
                        lock    v1.17.11 \
                        rmd160  8394d566ca9c036e2f51f863b743715bb9ca24dc \
                        sha256  8043668925d0747f2e1f06ccffd1ca1729cfde780de153d7cfc734ca1bf208fd \
                        size    39082404 \
                    github.com/gorilla/mux \
                        lock    v1.8.1 \
                        rmd160  7987ea5739b61af51e69127d23644c5760df3def \
                        sha256  55f5c50f77a44031da4bae5e5725a301a36a6072e42139e55afc606d631848fe \
                        size    47042 \
                    github.com/google/go-cmp \
                        lock    v0.6.0 \
                        rmd160  2c9f5dab93f8a0895591466fe4a07c5dd9166ae2 \
                        sha256  0d550825fae514f8a947ab7e42fcb874f509d9cbfa3ad2711d7570a25f31571a \
                        size    104795 \
                    github.com/davecgh/go-spew \
                        lock    v1.1.1 \
                        rmd160  7c02883aa81f81aca14e13a27fdca9e7fbc136f7 \
                        sha256  e85d6afa83e64962e0d63dd4812971eccf2b9b5445eda93f46a4406f0c177d5f \
                        size    42171 \
                    github.com/cpuguy83/go-md2man \
                        lock    v2.0.5 \
                        rmd160  9af69f242ce0d508cc132b933960356f7c763b31 \
                        sha256  ebb019c79ca6b8f331d256fe63eb7bb549b1b15fdfb7eb4f168969966df05734 \
                        size    10941 \
                    github.com/cespare/xxhash \
                        lock    v2.3.0 \
                        rmd160  dfed275969e04769f613bd08336420dc9009794a \
                        sha256  79cc788ad30f0d7987fb1f259f21477a74178e30f4a2b2803af2b43c3ebcfa91 \
                        size    12704 \
                    github.com/beorn7/perks \
                        lock    v1.0.1 \
                        rmd160  c6c5c7fd2132f01925c7fccd9d27c9d7a80f2adb \
                        sha256  78da4421e9f9fa2ee5e3855bdd31cfb04c7e823d9c0ec385cc2c008132d98b96 \
                        size    10874

build.cmd           ${workpath}/build.sh
build.pre_args
build.args

set bins            [list server cli]

post-extract {
    set bs [open ${build.cmd} w+]
    puts ${bs} "#!/bin/sh"
    puts ${bs} "set -x"
    foreach bin ${bins} {
        puts ${bs} "cd [shellescape ${worksrcpath}/cmd/${bin}] && ${go.bin} build -ldflags='-s -w -X ${go.package}.Version=${version}'"
    }
    close ${bs}
    file attributes ${build.cmd} -permissions 0755
}

destroot {
    foreach bin ${bins} {
        xinstall -m 0755 ${worksrcpath}/cmd/${bin}/${bin} ${destroot}${prefix}/bin/${name}-${bin}
    }
}

github.livecheck.regex {([0-9.]+)}
