From 92f27c42d132bd0ff844d862bfd4ecce3eb5c7b6 Mon Sep 17 00:00:00 2001 From: Pranav Gaikwad Date: Tue, 2 Apr 2024 13:42:47 -0400 Subject: [PATCH 1/6] :ghost: print detailed information about tags (#110) * :ghost: print detailed information about tags Signed-off-by: Pranav Gaikwad * update new tags Signed-off-by: Pranav Gaikwad * :ghost: fix print statement Signed-off-by: Pranav Gaikwad * :ghost: update effort Signed-off-by: Pranav Gaikwad * :ghost: increase timeout Signed-off-by: Pranav Gaikwad * :ghost: revert admin effective Signed-off-by: Pranav Gaikwad * :bug: remove admin effective test case Signed-off-by: Pranav Gaikwad --------- Signed-off-by: Pranav Gaikwad --- analysis/analysis_test.go | 40 +++++++++++++++++++++++++++++++++++---- analysis/pkg.go | 4 ++-- analysis/test_cases.go | 4 ++-- go.mod | 8 ++------ go.sum | 36 ++--------------------------------- 5 files changed, 44 insertions(+), 48 deletions(-) diff --git a/analysis/analysis_test.go b/analysis/analysis_test.go index b6d00f6..6877a2f 100644 --- a/analysis/analysis_test.go +++ b/analysis/analysis_test.go @@ -5,6 +5,7 @@ import ( "crypto/cipher" "crypto/sha256" "encoding/hex" + "fmt" "os" "sort" "strings" @@ -141,6 +142,11 @@ func TestApplicationAnalysis(t *testing.T) { time.Sleep(Wait) } + if task.State == "Running" { + t.Error("Timed out running the test. Details:") + pp.Println(task) + } + if task.State != "Succeeded" { t.Error("Analyze Task failed. Details:") pp.Println(task) @@ -279,10 +285,13 @@ func TestApplicationAnalysis(t *testing.T) { if len(tc.AnalysisTags) > 0 { if len(tc.AnalysisTags) != len(gotApp.Tags) { t.Errorf("Different Tags amount error. Got: %d, expected: %d.\n", len(gotApp.Tags), len(tc.AnalysisTags)) - t.Error("Got:") - pp.Println(gotApp.Tags) - t.Error("Expected:") - pp.Println(tc.AnalysisTags) + notFoundTags, unexpectedTags := getTagsDiff(tc.AnalysisTags, gotTags) + for _, notFoundTag := range notFoundTags { + pp.Println("Expected tag not found", notFoundTag) + } + for _, unexpectedTag := range unexpectedTags { + pp.Println("Unexpected tag found\n", unexpectedTag) + } } else { for i, got := range gotTags { expected := tc.AnalysisTags[i] @@ -339,3 +348,26 @@ func getDefaultToken() string { } return string(decrypted) } + +func getTagsDiff(want, got []api.Tag) (notFound []api.Tag, extras []api.Tag) { + tagKey := func(t api.Tag) string { return fmt.Sprintf("%s-%s", t.Category.Name, t.Name) } + wantTags := map[string]api.Tag{} + gotTags := map[string]api.Tag{} + for _, gotTag := range got { + gotTags[tagKey(gotTag)] = gotTag + } + for _, wantTag := range want { + wantTags[tagKey(wantTag)] = wantTag + // find tags we expect, but not present in output + if _, found := gotTags[tagKey(wantTag)]; !found { + notFound = append(notFound, wantTag) + } + } + for _, gotTag := range got { + // find tags we got, but we didn't expect + if _, found := wantTags[tagKey(gotTag)]; !found { + extras = append(extras, gotTag) + } + } + return +} diff --git a/analysis/pkg.go b/analysis/pkg.go index 93a73f5..333cac0 100644 --- a/analysis/pkg.go +++ b/analysis/pkg.go @@ -17,7 +17,7 @@ var ( RichClient *binding.RichClient // Analysis waiting loop 5 minutes (60 * 5s) - Retry = 100 + Retry = 200 Wait = 5 * time.Second ) @@ -45,7 +45,7 @@ type TC struct { Rules addon.Rules Scope *addon.Scope WithDeps bool - Binary bool + Binary bool Artifact string // After-analysis assertions. ReportContent map[string][]string diff --git a/analysis/test_cases.go b/analysis/test_cases.go index 2eb9c7a..a99d5b6 100644 --- a/analysis/test_cases.go +++ b/analysis/test_cases.go @@ -5,7 +5,6 @@ package analysis var Tier0TestCases = []TC{ TackleTestappPublicWithDeps, TackleTestappPublicPackageFilter, - AdministracionEfectivo, } // Tier 1 Analysis test cases - should work. @@ -17,6 +16,7 @@ var Tier1TestCases = []TC{ // Tier 2 Analysis test cases - great if works. // List of applications with expected analysis outputs. var Tier2TestCases = []TC{ + AdministracionEfectivo, Tomcat, TackleTestappPublic, Daytrader, @@ -27,6 +27,6 @@ var Tier2TestCases = []TC{ // Tier 3 Analysis test cases - should work // List of applications with expected analysis outputs. -var Tier3TestCases = []TC { +var Tier3TestCases = []TC{ TackleTestappPrivateBinary, } diff --git a/go.mod b/go.mod index 066ae5c..c16b3b6 100644 --- a/go.mod +++ b/go.mod @@ -5,11 +5,11 @@ go 1.18 require ( github.com/PuerkitoBio/goquery v1.8.1 github.com/jortel/go-utils v0.1.2 + github.com/k0kubun/pp v2.4.0+incompatible github.com/konveyor/tackle2-addon v0.2.0 github.com/konveyor/tackle2-hub v0.3.1-0.20240212080122-ae2295a67936 github.com/onsi/ginkgo/v2 v2.11.0 github.com/onsi/gomega v1.27.10 - github.com/tkanos/gonfig v0.0.0-20210106201359-53e13348de2f ) require ( @@ -25,7 +25,6 @@ require ( github.com/emicklei/go-restful/v3 v3.9.0 // indirect github.com/evanphx/json-patch/v5 v5.6.0 // indirect github.com/fatih/structs v1.1.0 // indirect - github.com/ghodss/yaml v1.0.0 // indirect github.com/gin-contrib/sse v0.1.0 // indirect github.com/gin-gonic/gin v1.9.0 // indirect github.com/go-logr/logr v1.2.4 // indirect @@ -36,7 +35,6 @@ require ( github.com/go-playground/universal-translator v0.18.1 // indirect github.com/go-playground/validator/v10 v10.13.0 // indirect github.com/go-resty/resty/v2 v2.6.0 // indirect - github.com/go-sql-driver/mysql v1.7.0 // indirect github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 // indirect github.com/goccy/go-json v0.10.0 // indirect github.com/gogo/protobuf v1.3.2 // indirect @@ -52,7 +50,7 @@ require ( github.com/jinzhu/now v1.1.5 // indirect github.com/josharian/intern v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect - github.com/k0kubun/pp v2.4.0+incompatible // indirect + github.com/k0kubun/colorstring v0.0.0-20150214042306-9440f1994b88 // indirect github.com/klauspost/cpuid/v2 v2.0.9 // indirect github.com/leodido/go-urn v1.2.4 // indirect github.com/mailru/easyjson v0.7.7 // indirect @@ -90,8 +88,6 @@ require ( gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - gorm.io/datatypes v1.2.0 // indirect - gorm.io/driver/mysql v1.4.7 // indirect gorm.io/gorm v1.25.2-0.20230530020048-26663ab9bf55 // indirect k8s.io/api v0.25.0 // indirect k8s.io/apimachinery v0.25.0 // indirect diff --git a/go.sum b/go.sum index 75f9d5c..348d972 100644 --- a/go.sum +++ b/go.sum @@ -4,8 +4,6 @@ github.com/Nerzal/gocloak/v10 v10.0.1 h1:W9pyD4I6w57ceNmjJoS4mXezBAxpupj11ytxper github.com/Nerzal/gocloak/v10 v10.0.1/go.mod h1:18jh1lwSHEJeSvmdH+08JyJU/XjPdNYLWEZ7paDB2k8= github.com/PuerkitoBio/goquery v1.8.1 h1:uQxhNlArOIdbrH1tr0UXwdVFgDcZDrZVdcpygAcwmWM= github.com/PuerkitoBio/goquery v1.8.1/go.mod h1:Q8ICL1kNUJ2sXGoAhPGUdYDJvgQgHzJsnnd3H7Ho5jQ= -github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= -github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= github.com/andybalholm/cascadia v1.3.1 h1:nhxRkql1kdYCc8Snf7D5/D3spOX+dBgjA6u8x004T2c= github.com/andybalholm/cascadia v1.3.1/go.mod h1:R4bJ1UQfqADjvDa4P6HZHLh/3OxWWEqc0Sk8XGwHqvA= github.com/andygrunwald/go-jira v1.16.0 h1:PU7C7Fkk5L96JvPc6vDVIrd99vdPnYudHu4ju2c2ikQ= @@ -41,13 +39,10 @@ github.com/evanphx/json-patch/v5 v5.6.0/go.mod h1:G79N1coSVB93tBe7j6PhzjmR3/2Vvl github.com/fatih/structs v1.1.0 h1:Q7juDM0QtcnhCpeyLGQKyg4TOIghuNXrkL32pHAUMxo= github.com/fatih/structs v1.1.0/go.mod h1:9NiDSp5zOcgEDl+j00MP/WkGVPOlPRLejGD8Ga6PJ7M= github.com/fsnotify/fsnotify v1.6.0 h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY= -github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= -github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= github.com/gin-contrib/sse v0.1.0 h1:Y/yl/+YNO8GZSjAhjMsSuLt29uWRFHdHYUb5lYOV9qE= github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI= github.com/gin-gonic/gin v1.9.0 h1:OjyFBKICoexlu99ctXNR2gg+c5pKrKMuyjgARg9qeY8= github.com/gin-gonic/gin v1.9.0/go.mod h1:W1Me9+hsUSyj3CePGrd1/QrKJMSJ1Tu/0hFEH89961k= -github.com/go-logfmt/logfmt v0.5.1/go.mod h1:WYhtIu8zTZfxdn5+rREduYbwxfcBr/Vr6KEVveWlfTs= github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas= github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= github.com/go-logr/logr v1.2.4 h1:g01GSCwiDw2xSZfjJ2/T9M+S6pFdcNtFYsp+Y43HYDQ= @@ -68,8 +63,6 @@ github.com/go-playground/validator/v10 v10.13.0 h1:cFRQdfaSMCOSfGCCLB20MHvuoHb/s github.com/go-playground/validator/v10 v10.13.0/go.mod h1:dwu7+CG8/CtBiJFZDz4e+5Upb6OLw04gtBYw0mcG/z4= github.com/go-resty/resty/v2 v2.6.0 h1:joIR5PNLM2EFqqESUjCMGXrWmXNHEU9CEiK813oKYS4= github.com/go-resty/resty/v2 v2.6.0/go.mod h1:PwvJS6hvaPkjtjNg9ph+VrSD92bi5Zq73w/BIH7cC3Q= -github.com/go-sql-driver/mysql v1.7.0 h1:ueSltNNllEqE3qcWBTD0iQd3IpL/6U+mJxLkazJ7YPc= -github.com/go-sql-driver/mysql v1.7.0/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI= github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 h1:tfuBGBXKqDEevZMzYi5KSi8KkcZtzBcTgAUUtapy0OI= github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572/go.mod h1:9Pwr4B2jHnOSGXyyzV8ROjYa2ojvAY6HCGYYfMoC3Ls= github.com/goccy/go-json v0.10.0 h1:mXKd9Qw4NuzShiRlOXKews24ufknHO7gx30lsDyokKA= @@ -80,8 +73,6 @@ github.com/golang-jwt/jwt/v4 v4.1.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzw github.com/golang-jwt/jwt/v4 v4.4.2/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= github.com/golang-jwt/jwt/v4 v4.5.0 h1:7cYmW1XlMY7h7ii7UhUyChSgS5wUJEnm9uZVTGqOWzg= github.com/golang-jwt/jwt/v4 v4.5.0/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= -github.com/golang-sql/civil v0.0.0-20220223132316-b832511892a9 h1:au07oEsX2xN0ktxqI+Sida1w446QrXBRJ0nee3SNZlA= -github.com/golang-sql/sqlexp v0.1.0 h1:ZCD6MBpcuOVfGVqsEmY5/4FtYiKz6tSyUv9LPEDei6A= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= @@ -120,23 +111,19 @@ github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/ianlancetaylor/demangle v0.0.0-20200824232613-28f6c0f3b639/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/imdario/mergo v0.3.12 h1:b6R2BslTbIEToALKP7LxUvijTsNI9TAe80pLWN2g/HU= -github.com/jackc/pgpassfile v1.0.0 h1:/6Hmqy13Ss2zCq62VdNG8tM1wchn8zjSGOBJ6icpsIM= -github.com/jackc/pgservicefile v0.0.0-20221227161230-091c0ba34f0a h1:bbPeKD0xmW/Y25WS6cokEszi5g+S0QxI/d45PkRi7Nk= -github.com/jackc/pgx/v5 v5.3.0 h1:/NQi8KHMpKWHInxXesC8yD4DhkXPrVhmnwYkjp9AmBA= github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD/E= github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc= -github.com/jinzhu/now v1.1.4/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8= github.com/jinzhu/now v1.1.5 h1:/o9tlHleP7gOFmsnYNz3RGnqzefHA47wQpKrrdTIwXQ= github.com/jinzhu/now v1.1.5/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8= github.com/jortel/go-utils v0.1.2 h1:R0TcGRCcwoL793CymcKC5AF9idWXT2cR6eQ2xpBUsoI= github.com/jortel/go-utils v0.1.2/go.mod h1:sl6vav63ODI0sUfSz8e0pImNmCVFnVsuOFhZmwe9GDk= github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= -github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= -github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= +github.com/k0kubun/colorstring v0.0.0-20150214042306-9440f1994b88 h1:uC1QfSlInpQF+M0ao65imhwqKnz3Q2z/d8PWZRMQvDM= +github.com/k0kubun/colorstring v0.0.0-20150214042306-9440f1994b88/go.mod h1:3w7q1U84EfirKl04SVQ/s7nPm1ZPhiXd34z40TNz36k= github.com/k0kubun/pp v2.4.0+incompatible h1:M9iQzcejGfiBjDa7+Tc0rJgR7WFKP6rim/Q0DDrAT3g= github.com/k0kubun/pp v2.4.0+incompatible/go.mod h1:GWse8YhT0p8pT4ir3ZgBbfZild3tgzSScAn6HmfYukg= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= @@ -145,8 +132,6 @@ github.com/klauspost/cpuid/v2 v2.0.9 h1:lgaqFMSdTdQYdZ04uHyN2d/eKdOMyi2YLSvlQIBF github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg= github.com/konveyor/tackle2-addon v0.2.0 h1:YWyFY72ZU2oKsPFb0Pt1U/1sWtD186BcYxtwJRDOni0= github.com/konveyor/tackle2-addon v0.2.0/go.mod h1:2poGMxU2vxmz7+FppLvSliMrk0mAtbDHp+LeZ/p2/Q8= -github.com/konveyor/tackle2-hub v0.3.0-beta.1.1.0.20231019182229-77fa5af3ac80 h1:KJ/SNXe888UkQ06SlZXZsY54bCp9q+FYhaGM+G4tMGQ= -github.com/konveyor/tackle2-hub v0.3.0-beta.1.1.0.20231019182229-77fa5af3ac80/go.mod h1:Olcw0BD/zmhVtdOR4pOR8HPDFRnafERO/eM5iHUG/8A= github.com/konveyor/tackle2-hub v0.3.1-0.20240212080122-ae2295a67936 h1:OSltvI88suLT9fSoC26IVBQzuVv9oD/ohvPm5uSo4U8= github.com/konveyor/tackle2-hub v0.3.1-0.20240212080122-ae2295a67936/go.mod h1:97Z3kWWmPERNl58XkpQkV/F+jnqNNDAVpL9m9XTZmdo= github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= @@ -156,8 +141,6 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/leodido/go-urn v1.2.3 h1:6BE2vPT0lqoz3fmOesHZiaiFh7889ssCo2GMvLCfiuA= -github.com/leodido/go-urn v1.2.3/go.mod h1:7ZrI8mTSeBSHl/UaRyKQW1qZeMgak41ANeCNaVckg+4= github.com/leodido/go-urn v1.2.4 h1:XlAE/cm/ms7TE/VMVoduSpNBoyc2dOxHs5MZSwAN63Q= github.com/leodido/go-urn v1.2.4/go.mod h1:7ZrI8mTSeBSHl/UaRyKQW1qZeMgak41ANeCNaVckg+4= github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= @@ -171,7 +154,6 @@ github.com/mattn/go-sqlite3 v1.14.17 h1:mCRHCLDUBXgpKAqIKsaAaAsrAlbkeomtRFKXh2L6 github.com/mattn/go-sqlite3 v1.14.17/go.mod h1:2eHXhiwb8IkHr+BDWZGa96P6+rkvnG63S2DGjv9HUNg= github.com/matttproud/golang_protobuf_extensions v1.0.4 h1:mmDVorXM7PCGKw94cs5zkfA9PSy5pEvNWRP0ET0TIVo= github.com/matttproud/golang_protobuf_extensions v1.0.4/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= -github.com/microsoft/go-mssqldb v0.17.0 h1:Fto83dMZPnYv1Zwx5vHHxpNraeEaUlQ/hhHLgZiaenE= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= @@ -179,10 +161,7 @@ github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9G github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= -github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= -github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= -github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= github.com/onsi/ginkgo/v2 v2.11.0 h1:WgqUCUt/lT6yXoQ8Wef0fsNn5cAuMK7+KT9UFRz2tcU= github.com/onsi/ginkgo/v2 v2.11.0/go.mod h1:ZhrRA5XmEE3x3rhlzamx/JJvujdZoJ2uvgI7kR0iZvM= @@ -227,8 +206,6 @@ github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/stretchr/testify v1.8.4 h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk= github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= -github.com/tkanos/gonfig v0.0.0-20210106201359-53e13348de2f h1:xDFq4NVQD34ekH5UsedBSgfxsBuPU2aZf7v4t0tH2jY= -github.com/tkanos/gonfig v0.0.0-20210106201359-53e13348de2f/go.mod h1:DaZPBuToMc2eezA9R9nDAnmS2RMwL7yEa5YD36ESQdI= github.com/trivago/tgo v1.0.7 h1:uaWH/XIy9aWYWpjm2CU3RpcqZXmX2ysQ9/Go+d9gyrM= github.com/trivago/tgo v1.0.7/go.mod h1:w4dpD+3tzNIIiIfkWWa85w5/B77tlvdZckQ+6PkFnhc= github.com/twitchyliquid64/golang-asm v0.15.1 h1:SU5vSMR7hnwNxj24w34ZyCi/FmDZTkS4MhqMhdFk5YI= @@ -363,7 +340,6 @@ gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EV gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= -gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= @@ -373,14 +349,6 @@ gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -gorm.io/datatypes v1.2.0 h1:5YT+eokWdIxhJgWHdrb2zYUimyk0+TaFth+7a0ybzco= -gorm.io/datatypes v1.2.0/go.mod h1:o1dh0ZvjIjhH/bngTpypG6lVRJ5chTBxE09FH/71k04= -gorm.io/driver/mysql v1.4.7 h1:rY46lkCspzGHn7+IYsNpSfEv9tA+SU4SkkB+GFX125Y= -gorm.io/driver/mysql v1.4.7/go.mod h1:SxzItlnT1cb6e1e4ZRpgJN2VYtcqJgqnHxWr4wsP8oc= -gorm.io/driver/postgres v1.5.0 h1:u2FXTy14l45qc3UeCJ7QaAXZmZfDDv0YrthvmRq1l0U= -gorm.io/driver/sqlite v1.5.2 h1:TpQ+/dqCY4uCigCFyrfnrJnrW9zjpelWVoEVNy5qJkc= -gorm.io/driver/sqlserver v1.4.1 h1:t4r4r6Jam5E6ejqP7N82qAJIJAht27EGT41HyPfXRw0= -gorm.io/gorm v1.23.8/go.mod h1:l2lP/RyAtc1ynaTjFksBde/O8v9oOGIApu2/xRitmZk= gorm.io/gorm v1.25.2-0.20230530020048-26663ab9bf55 h1:sC1Xj4TYrLqg1n3AN10w871An7wJM0gzgcm8jkIkECQ= gorm.io/gorm v1.25.2-0.20230530020048-26663ab9bf55/go.mod h1:L4uxeKpfBml98NYqVqwAdmV1a2nBtAec/cf3fpucW/k= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= From c3089bc3ea888ffce49b081b7b6b3e36408f2e56 Mon Sep 17 00:00:00 2001 From: Maayan Hadasi <60384172+mguetta1@users.noreply.github.com> Date: Thu, 11 Apr 2024 09:43:52 +0300 Subject: [PATCH 2/6] Updating Jira stage projectId (#112) Signed-off-by: Maayan Hadasi --- data/migrationwave/migrationwave_data.go | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/data/migrationwave/migrationwave_data.go b/data/migrationwave/migrationwave_data.go index 88e6c5c..dd8baa8 100644 --- a/data/migrationwave/migrationwave_data.go +++ b/data/migrationwave/migrationwave_data.go @@ -29,32 +29,32 @@ var ( TaskJiraServer = ExportApplicationsCase{ JiraInstance: jira.JiraServer, TicketKind: "3", /* Task issuetypeId */ - TicketParent: "12340621"} /* mta-qe-test projectId */ + TicketParent: "12335626"} /* Migration Toolkit for Applications projectId */ StoryJiraServer = ExportApplicationsCase{ JiraInstance: jira.JiraServer, TicketKind: "17", /* Story */ - TicketParent: "12340621"} + TicketParent: "12335626"} BugJiraServer = ExportApplicationsCase{ JiraInstance: jira.JiraServer, TicketKind: "1", /* Bug */ - TicketParent: "12340621"} + TicketParent: "12335626"} TaskJiraUsingToken = ExportApplicationsCase{ JiraInstance: jira.JiraServerBearerToken, /* Using token for Jira connection */ TicketKind: "3", /* Task issuetypeId */ - TicketParent: "12340621"} /* mta-qe-test projectId */ + TicketParent: "12335626"} StoryJiraUsingToken = ExportApplicationsCase{ JiraInstance: jira.JiraServerBearerToken, TicketKind: "17", /* Story */ - TicketParent: "12340621"} + TicketParent: "12335626"} BugJiraUsingToken = ExportApplicationsCase{ JiraInstance: jira.JiraServerBearerToken, TicketKind: "1", /* Bug */ - TicketParent: "12340621"} + TicketParent: "12335626"} Samples = []ExportApplicationsCase{TaskJiraCloud, TaskJiraServer, TaskJiraUsingToken, StoryJiraCloud, StoryJiraServer, StoryJiraUsingToken, From b98c6f9fe73a75e08a17ee153af673179dbff04c Mon Sep 17 00:00:00 2001 From: Marek Aufart Date: Wed, 17 Apr 2024 14:12:26 +0200 Subject: [PATCH 3/6] Fix private binary app analysis tier3 (#114) * Fix private binary app analysis tier3 Updating expected incidents files prefix and adding more readable diff for issues and incident lists. This should fix tier3 test. Signed-off-by: Marek Aufart * Remove localstorage line 37 incident Signed-off-by: Marek Aufart * Update issues and ancident diff output Signed-off-by: Marek Aufart --------- Signed-off-by: Marek Aufart --- analysis/analysis_test.go | 45 ++++-------- analysis/compare.go | 77 ++++++++++++++++++++ analysis/tc_tackle_testapp_private_binary.go | 25 +++---- 3 files changed, 101 insertions(+), 46 deletions(-) create mode 100644 analysis/compare.go diff --git a/analysis/analysis_test.go b/analysis/analysis_test.go index 6877a2f..1dedb21 100644 --- a/analysis/analysis_test.go +++ b/analysis/analysis_test.go @@ -190,10 +190,13 @@ func TestApplicationAnalysis(t *testing.T) { // Check the analysis issues if len(gotAnalysis.Issues) != len(tc.Analysis.Issues) { t.Errorf("Different amount of issues error. Got %d, expected %d.", len(gotAnalysis.Issues), len(tc.Analysis.Issues)) - t.Error("Got:") - pp.Println(gotAnalysis.Issues) - t.Error("Expected:") - pp.Println(tc.Analysis.Issues) + missing, unexpected := getIssuesDiff(tc.Analysis.Issues, gotAnalysis.Issues) + for _, issue := range missing { + fmt.Printf("Expected issue not found for rule %s.\n", issue.Rule) + } + for _, issue := range unexpected { + fmt.Printf("Unexpected issue found for rule %s.\n", issue.Rule) + } } else { for i, got := range gotAnalysis.Issues { expected := tc.Analysis.Issues[i] @@ -208,10 +211,13 @@ func TestApplicationAnalysis(t *testing.T) { } if len(got.Incidents) != len(expected.Incidents) { t.Errorf("Different amount of incidents error. Got %d, expected %d.", len(got.Incidents), len(expected.Incidents)) - t.Error("Got:") - pp.Println(got.Incidents) - t.Error("Expected:") - pp.Println(expected.Incidents) + missing, unexpected := getIncidentsDiff(expected.Incidents, got.Incidents) + for _, incident := range missing { + fmt.Printf("Expected incident not found: %s line %d.\n", incident.File, incident.Line) + } + for _, incident := range unexpected { + fmt.Printf("Unexpected incident found: %s line %d.\n", incident.File, incident.Line) + } } else { // Ensure stable order of Incidents. @@ -348,26 +354,3 @@ func getDefaultToken() string { } return string(decrypted) } - -func getTagsDiff(want, got []api.Tag) (notFound []api.Tag, extras []api.Tag) { - tagKey := func(t api.Tag) string { return fmt.Sprintf("%s-%s", t.Category.Name, t.Name) } - wantTags := map[string]api.Tag{} - gotTags := map[string]api.Tag{} - for _, gotTag := range got { - gotTags[tagKey(gotTag)] = gotTag - } - for _, wantTag := range want { - wantTags[tagKey(wantTag)] = wantTag - // find tags we expect, but not present in output - if _, found := gotTags[tagKey(wantTag)]; !found { - notFound = append(notFound, wantTag) - } - } - for _, gotTag := range got { - // find tags we got, but we didn't expect - if _, found := wantTags[tagKey(gotTag)]; !found { - extras = append(extras, gotTag) - } - } - return -} diff --git a/analysis/compare.go b/analysis/compare.go new file mode 100644 index 0000000..0a99c6e --- /dev/null +++ b/analysis/compare.go @@ -0,0 +1,77 @@ +package analysis + +import ( + "fmt" + + "github.com/konveyor/tackle2-hub/api" +) + +// Compare diffs for resources collections relevant for Analysis +func getTagsDiff(want, got []api.Tag) (notFound []api.Tag, extras []api.Tag) { + tagKey := func(t api.Tag) string { return fmt.Sprintf("%s-%s", t.Category.Name, t.Name) } + wantTags := map[string]api.Tag{} + gotTags := map[string]api.Tag{} + for _, gotTag := range got { + gotTags[tagKey(gotTag)] = gotTag + } + for _, wantTag := range want { + wantTags[tagKey(wantTag)] = wantTag + // find tags we expect, but not present in output + if _, found := gotTags[tagKey(wantTag)]; !found { + notFound = append(notFound, wantTag) + } + } + for _, gotTag := range got { + // find tags we got, but we didn't expect + if _, found := wantTags[tagKey(gotTag)]; !found { + extras = append(extras, gotTag) + } + } + return +} + +func getIssuesDiff(wantList, gotList []api.Issue) (notFound []api.Issue, extras []api.Issue) { + key := func(r api.Issue) string { return fmt.Sprintf("%s-%s-%s-%d", r.Category, r.RuleSet, r.Rule, r.Effort) } + wantMap := map[string]api.Issue{} + gotMap := map[string]api.Issue{} + for _, got := range gotList { + gotMap[key(got)] = got + } + for _, want := range wantList { + wantMap[key(want)] = want + // find what we expect, but not present in output + if _, found := gotMap[key(want)]; !found { + notFound = append(notFound, want) + } + } + for _, got := range gotList { + // find what we got, but we didn't expect + if _, found := wantMap[key(got)]; !found { + extras = append(extras, got) + } + } + return +} + +func getIncidentsDiff(wantList, gotList []api.Incident) (notFound []api.Incident, extras []api.Incident) { + key := func(r api.Incident) string { return fmt.Sprintf("%s-%d", r.File, r.Line) } + wantMap := map[string]api.Incident{} + gotMap := map[string]api.Incident{} + for _, got := range gotList { + gotMap[key(got)] = got + } + for _, want := range wantList { + wantMap[key(want)] = want + // find tags we expect, but not present in output + if _, found := gotMap[key(want)]; !found { + notFound = append(notFound, want) + } + } + for _, got := range gotList { + // find tags we got, but we didn't expect + if _, found := wantMap[key(got)]; !found { + extras = append(extras, got) + } + } + return +} \ No newline at end of file diff --git a/analysis/tc_tackle_testapp_private_binary.go b/analysis/tc_tackle_testapp_private_binary.go index d562268..588340f 100644 --- a/analysis/tc_tackle_testapp_private_binary.go +++ b/analysis/tc_tackle_testapp_private_binary.go @@ -21,7 +21,7 @@ var TackleTestappPrivateBinary = TC{ }, Binary: true, Analysis: api.Analysis{ - Effort: 16, + Effort: 15, Issues: []api.Issue{ { Category: "mandatory", @@ -31,7 +31,7 @@ var TackleTestappPrivateBinary = TC{ Rule: "jni-native-code-00000", Incidents: []api.Incident{ { - File: "/addon/bin/maven/java-project/src/main/java/io/konveyor/demo/config/ApplicationConfiguration.java", + File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/config/ApplicationConfiguration.java", Line: 17, Message: "\n Java native libraries might not run in a cloud or container environment.", }, @@ -45,47 +45,42 @@ var TackleTestappPrivateBinary = TC{ Rule: "local-storage-00001", Incidents: []api.Incident{ { - File: "/addon/bin/maven/java-project/src/main/java/io/konveyor/demo/config/ApplicationConfiguration.java", + File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/config/ApplicationConfiguration.java", Line: 8, Message: "\n An application running inside a container could lose access to a file in local storage.", }, { - File: "/addon/bin/maven/java-project/src/main/java/io/konveyor/demo/config/ApplicationConfiguration.java", - Line: 37, - Message: "\n An application running inside a container could lose access to a file in local storage.", - }, - { - File: "/addon/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", + File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", Line: 39, Message: "\n An application running inside a container could lose access to a file in local storage.", }, { - File: "/addon/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", + File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", Line: 40, Message: "\n An application running inside a container could lose access to a file in local storage.", }, { - File: "/addon/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", + File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", Line: 41, Message: "\n An application running inside a container could lose access to a file in local storage.", }, { - File: "/addon/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", + File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", Line: 42, Message: "\n An application running inside a container could lose access to a file in local storage.", }, { - File: "/addon/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", + File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", Line: 61, Message: "\n An application running inside a container could lose access to a file in local storage.", }, { - File: "/addon/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", + File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", Line: 62, Message: "\n An application running inside a container could lose access to a file in local storage.", }, { - File: "/addon/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/exception/handler/ExceptionHandlingController.java", + File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/exception/handler/ExceptionHandlingController.java", Line: 20, Message: "\n An application running inside a container could lose access to a file in local storage.", }, From 3a1bb745deb1777706e00e2874110f10843994ef Mon Sep 17 00:00:00 2001 From: Pranav Gaikwad Date: Thu, 25 Apr 2024 16:30:00 -0400 Subject: [PATCH 4/6] :ghost: update for new ruleset changes (#116) Signed-off-by: Pranav Gaikwad --- analysis/tc_tackle_testapp_public_deps.go | 5 ++++- analysis/tc_tackle_testapp_public_package_filter.go | 3 +++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/analysis/tc_tackle_testapp_public_deps.go b/analysis/tc_tackle_testapp_public_deps.go index 4a10e57..f540299 100644 --- a/analysis/tc_tackle_testapp_public_deps.go +++ b/analysis/tc_tackle_testapp_public_deps.go @@ -51,7 +51,7 @@ var TackleTestappPublicWithDeps = TC{ { File: "/cache/m2/io/konveyor/demo/configuration-utils/1.0.0/io/konveyor/demo/config/ApplicationConfiguration.java", Line: 14, - Message: "\n An application running inside a container could lose access to a file in local storage", + Message: "An application running inside a container could lose access to a file in local storage", }, }, }, @@ -569,6 +569,7 @@ var TackleTestappPublicWithDeps = TC{ {Name: "Micrometer", Category: api.Ref{Name: "Integration"}}, {Name: "Spring DI", Category: api.Ref{Name: "Inversion of Control"}}, {Name: "Spring Data JPA", Category: api.Ref{Name: "Persistence"}}, + {Name: "JPA named queries", Category: api.Ref{Name: "Persistence"}}, {Name: "Properties", Category: api.Ref{Name: "Other"}}, {Name: "Spring Web", Category: api.Ref{Name: "Web"}}, {Name: "Spring DI", Category: api.Ref{Name: "Execute"}}, @@ -577,6 +578,7 @@ var TackleTestappPublicWithDeps = TC{ {Name: "Servlet", Category: api.Ref{Name: "Connect"}}, {Name: "Servlet", Category: api.Ref{Name: "Java EE"}}, {Name: "EJB XML", Category: api.Ref{Name: "Java EE"}}, + {Name: "JPA named queries", Category: api.Ref{Name: "Java EE"}}, {Name: "Properties", Category: api.Ref{Name: "Sustain"}}, {Name: "Properties", Category: api.Ref{Name: "Embedded"}}, {Name: "Spring Web", Category: api.Ref{Name: "Embedded"}}, @@ -585,5 +587,6 @@ var TackleTestappPublicWithDeps = TC{ {Name: "Micrometer", Category: api.Ref{Name: "Embedded"}}, {Name: "Spring Web", Category: api.Ref{Name: "View"}}, {Name: "Spring Data JPA", Category: api.Ref{Name: "Store"}}, + {Name: "JPA named queries", Category: api.Ref{Name: "Store"}}, }, } diff --git a/analysis/tc_tackle_testapp_public_package_filter.go b/analysis/tc_tackle_testapp_public_package_filter.go index 10d502b..ed3cb39 100644 --- a/analysis/tc_tackle_testapp_public_package_filter.go +++ b/analysis/tc_tackle_testapp_public_package_filter.go @@ -59,6 +59,9 @@ var TackleTestappPublicPackageFilter = TC{ {Name: "Properties", Category: api.Ref{Name: "Other"}}, {Name: "EJB XML", Category: api.Ref{Name: "Java EE"}}, {Name: "Servlet", Category: api.Ref{Name: "Java EE"}}, + {Name: "JPA named queries", Category: api.Ref{Name: "Java EE"}}, + {Name: "JPA named queries", Category: api.Ref{Name: "Persistence"}}, + {Name: "JPA named queries", Category: api.Ref{Name: "Store"}}, {Name: "Servlet", Category: api.Ref{Name: "Connect"}}, {Name: "Properties", Category: api.Ref{Name: "Sustain"}}, {Name: "EJB XML", Category: api.Ref{Name: "Connect"}}, From 539b8762ec8582c1fc974169ff084af557cc0aef Mon Sep 17 00:00:00 2001 From: Maayan Hadasi <60384172+mguetta1@users.noreply.github.com> Date: Thu, 2 May 2024 13:42:18 +0300 Subject: [PATCH 5/6] Update README and configuration file (#115) Signed-off-by: Maayan Hadasi --- Makefile | 6 +++++- README.md | 6 +++++- analysis/README.md | 8 +++++++- analysis/test_cases.go | 4 ++-- go-konveyor-tests.config | 18 ++++++++++++++++++ 5 files changed, 37 insertions(+), 5 deletions(-) create mode 100644 go-konveyor-tests.config diff --git a/Makefile b/Makefile index e96b0f9..6911a30 100644 --- a/Makefile +++ b/Makefile @@ -2,6 +2,10 @@ VENDOR_DIR ?= /tmp/konveyor-vendor ARCH ?= amd64 JUNIT_REPORT_DIR ?= /tmp/junit-report +# Set MAVEN_TESTAPP_USER to the value of GITHUB_USER if GITHUB_USER is defined +MAVEN_TESTAPP_USER ?= $(GITHUB_USER) +MAVEN_TESTAPP_TOKEN ?= $(GITHUB_TOKEN) + # Setup local minikube with tackle - work in progress (TODO: enable auth) # This is for local setup, CI uses shared github actions @@ -44,7 +48,7 @@ test-tier2: # TIER3 test-tier3: - TIER3=1 MAVEN_TESTAPP_USER=$(GITHUB_USER) MAVEN_TESTAPP_TOKEN=$(GITHUB_TOKEN) $(MAKE) test-analysis + TIER3=1 MAVEN_TESTAPP_USER='$(MAVEN_TESTAPP_USER)' MAVEN_TESTAPP_TOKEN='$(MAVEN_TESTAPP_TOKEN)' $(MAKE) test-analysis $(MAKE) test-jira $(MAKE) test-migrationwave diff --git a/README.md b/README.md index 9012862..0113b36 100644 --- a/README.md +++ b/README.md @@ -124,7 +124,11 @@ For parallel test execution, set `export PARALLEL=1`. ## Configuration > **_NOTE:_** Before running tests, ensure that the required configuration variables are set as environment variables - + +You can edit the configuration file [go-konveyor-tests.config](go-konveyor-tests.config) and run: +``` +source go-konveyor-tests.config +``` ### Test-Specific Configuration diff --git a/analysis/README.md b/analysis/README.md index d76a1bb..9121bac 100644 --- a/analysis/README.md +++ b/analysis/README.md @@ -26,12 +26,18 @@ TIER1=1 make test-analysis More advanced analysis parameters. Great if works. -Test cases: https://github.com/konveyor/go-konveyor-tests/blob/main/analysis/test_cases.go#L20 +Test cases: https://github.com/konveyor/go-konveyor-tests/blob/main/analysis/test_cases.go#L19 ``` TIER2=1 make test-analysis ``` +### Tier 3 + +Application analysis with credentials, which are supplied as part of the test configuration. Should work. + +Test cases: https://github.com/konveyor/go-konveyor-tests/blob/main/analysis/test_cases.go#L31 + ## Options [HUB_BASE_URL](https://github.com/konveyor/tackle2-hub/tree/main/test#rest-api) is required in the same way as in API test. diff --git a/analysis/test_cases.go b/analysis/test_cases.go index a99d5b6..5f2f9d7 100644 --- a/analysis/test_cases.go +++ b/analysis/test_cases.go @@ -25,8 +25,8 @@ var Tier2TestCases = []TC{ SeamBooking, } -// Tier 3 Analysis test cases - should work +// Tier 3 Analysis with credentials test cases - should work // List of applications with expected analysis outputs. var Tier3TestCases = []TC{ - TackleTestappPrivateBinary, + TackleTestappPrivateBinary, // Needs GITHUB_USER and GITHUB_TOKEN env variables with Read access to https://github.com/konveyor/tackle-testapp } diff --git a/go-konveyor-tests.config b/go-konveyor-tests.config new file mode 100644 index 0000000..a37d880 --- /dev/null +++ b/go-konveyor-tests.config @@ -0,0 +1,18 @@ +#!/bin/bash +export KUBECONFIG="" +export HUB_BASE_URL="" +export HUB_PASSWORD="" +export HUB_USERNAME="" + +# Enviroment variebles needed for e2e/jiraintegration and e2e/migrationwave tests +export JIRA_CLOUD_USERNAME="" +export JIRA_CLOUD_PASSWORD="" +export JIRA_CLOUD_URL="" +export JIRA_SERVER_URL="" +export JIRA_SERVER_USERNAME="" +export JIRA_SERVER_PASSWORD="" +export JIRA_SERVER_TOKEN="" + +# Enviroment variebles needed for Tier3 Analysis test +export GITHUB_USER="" +export GITHUB_TOKEN="" From ea8c507142bb0919eb83e27cf6a8987cd66c67ba Mon Sep 17 00:00:00 2001 From: Marek Aufart Date: Thu, 2 May 2024 15:03:29 +0200 Subject: [PATCH 6/6] Update tier3 analysis tests (#120) There was an update in rulesets with update of upstream tests in https://github.com/konveyor/go-konveyor-tests/pull/116 Updating tier3 tests according to ^ Signed-off-by: Marek Aufart --- analysis/tc_tackle_testapp_private_binary.go | 21 +++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/analysis/tc_tackle_testapp_private_binary.go b/analysis/tc_tackle_testapp_private_binary.go index 588340f..05ff1c8 100644 --- a/analysis/tc_tackle_testapp_private_binary.go +++ b/analysis/tc_tackle_testapp_private_binary.go @@ -33,7 +33,7 @@ var TackleTestappPrivateBinary = TC{ { File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/config/ApplicationConfiguration.java", Line: 17, - Message: "\n Java native libraries might not run in a cloud or container environment.", + Message: "Java native libraries might not run in a cloud or container environment.", }, }, }, @@ -47,42 +47,42 @@ var TackleTestappPrivateBinary = TC{ { File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/config/ApplicationConfiguration.java", Line: 8, - Message: "\n An application running inside a container could lose access to a file in local storage.", + Message: "An application running inside a container could lose access to a file in local storage.", }, { File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", Line: 39, - Message: "\n An application running inside a container could lose access to a file in local storage.", + Message: "An application running inside a container could lose access to a file in local storage.", }, { File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", Line: 40, - Message: "\n An application running inside a container could lose access to a file in local storage.", + Message: "An application running inside a container could lose access to a file in local storage.", }, { File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", Line: 41, - Message: "\n An application running inside a container could lose access to a file in local storage.", + Message: "An application running inside a container could lose access to a file in local storage.", }, { File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", Line: 42, - Message: "\n An application running inside a container could lose access to a file in local storage.", + Message: "An application running inside a container could lose access to a file in local storage.", }, { File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", Line: 61, - Message: "\n An application running inside a container could lose access to a file in local storage.", + Message: "An application running inside a container could lose access to a file in local storage.", }, { File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/config/PersistenceConfig.java", Line: 62, - Message: "\n An application running inside a container could lose access to a file in local storage.", + Message: "An application running inside a container could lose access to a file in local storage.", }, { File: "/bin/maven/java-project/src/main/java/io/konveyor/demo/ordermanagement/exception/handler/ExceptionHandlingController.java", Line: 20, - Message: "\n An application running inside a container could lose access to a file in local storage.", + Message: "An application running inside a container could lose access to a file in local storage.", }, }, }, @@ -95,5 +95,8 @@ var TackleTestappPrivateBinary = TC{ {Name: "JNI", Category: api.Ref{Name: "Connect"}}, {Name: "Servlet", Category: api.Ref{Name: "Java EE"}}, {Name: "JNI", Category: api.Ref{Name: "Java EE"}}, + {Name: "JPA named queries", Category: api.Ref{Name: "Persistence"}}, + {Name: "JPA named queries", Category: api.Ref{Name: "Java EE"}}, + {Name: "JPA named queries", Category: api.Ref{Name: "Store"}}, }, }