{
  "_class" : "hudson.matrix.MatrixBuild",
  "actions" : [
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "hudson.triggers.SCMTrigger$SCMTriggerCause",
          "shortDescription" : "Started by an SCM change"
        }
      ]
    },
    {
      
    },
    {
      "_class" : "hudson.model.ParametersAction",
      "parameters" : [
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "BRANCH",
          "value" : "master"
        },
        {
          "_class" : "hudson.model.StringParameterValue",
          "name" : "EMAIL_NOTIFICATIONS",
          "value" : "jenkins-notifications@lists.osmocom.org laforge@gnumonks.org"
        }
      ]
    },
    {
      "_class" : "jenkins.metrics.impl.TimeInQueueAction",
      "blockedDurationMillis" : 0,
      "blockedTimeMillis" : 0,
      "buildableDurationMillis" : 0,
      "buildableTimeMillis" : 0,
      "buildingDurationMillis" : 95115,
      "executingTimeMillis" : 95115,
      "executorUtilization" : 1.0,
      "subTaskCount" : 0,
      "waitingDurationMillis" : 8344,
      "waitingTimeMillis" : 8344
    },
    {
      
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 750,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "45d9eb03d0c8e401817125ce403f5833e36178b9",
            "branch" : [
              {
                "SHA1" : "45d9eb03d0c8e401817125ce403f5833e36178b9",
                "name" : "origin/master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "45d9eb03d0c8e401817125ce403f5833e36178b9",
            "branch" : [
              {
                "SHA1" : "45d9eb03d0c8e401817125ce403f5833e36178b9",
                "name" : "origin/master"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "45d9eb03d0c8e401817125ce403f5833e36178b9",
        "branch" : [
          {
            "SHA1" : "45d9eb03d0c8e401817125ce403f5833e36178b9",
            "name" : "origin/master"
          }
        ]
      },
      "remoteUrls" : [
        "https://gerrit.osmocom.org/erlang/osmo-s1gw"
      ],
      "scmName" : ""
    },
    {
      
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    }
  ],
  "artifacts" : [
    
  ],
  "building" : False,
  "description" : None,
  "displayName" : "#750",
  "duration" : 95115,
  "estimatedDuration" : 81083,
  "executor" : None,
  "fullDisplayName" : "master-osmo-s1gw #750",
  "id" : "750",
  "inProgress" : False,
  "keepLog" : False,
  "number" : 750,
  "queueId" : 65314,
  "result" : "SUCCESS",
  "timestamp" : 1773945369251,
  "url" : "https://jenkins.osmocom.org/jenkins/view/Smalltalk/job/master-osmo-s1gw/750/",
  "builtOn" : "",
  "changeSet" : {
    "_class" : "hudson.plugins.git.GitChangeSetList",
    "items" : [
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "doc/manuals/chapters/configuration.adoc",
          "doc/osmo-s1gw-cli.md",
          "doc/manuals/chapters/rest.adoc",
          "doc/manuals/chapters/running.adoc",
          "doc/manuals/chapters/cli.adoc",
          "doc/manuals/osmo-s1gw-usermanual.adoc",
          "README.md"
        ],
        "commitId" : "1d0434c91ff06363df581e2b84618da2b6e00804",
        "timestamp" : 1773839630000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
          "fullName" : "Vadim Yanitskiy"
        },
        "authorEmail" : "vyanitskiy@sysmocom.de",
        "comment" : "doc/manuals: merge doc/osmo-s1gw-cli.md\u000a\u000aChange-Id: Ic2556f6add9c6a24f6da03f4388d7f86dde0c5dc\u000aRelated: OS#6671, SYS#7066\u000a",
        "date" : "2026-03-18 20:13:50 +0700",
        "id" : "1d0434c91ff06363df581e2b84618da2b6e00804",
        "msg" : "doc/manuals: merge doc/osmo-s1gw-cli.md",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "doc/manuals/chapters/configuration.adoc"
          },
          {
            "editType" : "edit",
            "file" : "doc/manuals/chapters/rest.adoc"
          },
          {
            "editType" : "edit",
            "file" : "doc/manuals/osmo-s1gw-usermanual.adoc"
          },
          {
            "editType" : "add",
            "file" : "doc/manuals/chapters/cli.adoc"
          },
          {
            "editType" : "edit",
            "file" : "doc/manuals/chapters/running.adoc"
          },
          {
            "editType" : "edit",
            "file" : "README.md"
          },
          {
            "editType" : "delete",
            "file" : "doc/osmo-s1gw-cli.md"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "doc/manuals/chapters/cli.adoc",
          "doc/manuals/chapters/rest.adoc"
        ],
        "commitId" : "2564ea73b7b581ff1d8bc069307ca50afe4e40e1",
        "timestamp" : 1773839635000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
          "fullName" : "Vadim Yanitskiy"
        },
        "authorEmail" : "vyanitskiy@sysmocom.de",
        "comment" : "doc/manuals: update MmeItem related info\u000a\u000aThe osmo-s1gw-cli documentation was not properly updated in 63ce2c9:\u000a\u000a* default local/bind address for an MME is \"any\", not \"::\"\u000a* allowed TACs (--tac) was missing in help and examples\u000a\u000aChange-Id: I0b8115fe6342a80bf1eb99bd6ad210492a013947\u000aFixes: 63ce2c9 (\"[REST] Add MmeList, MmeAdd, MmeInfo, MmeDelete\")\u000aRelated: OS#6671, SYS#7066, SYS#7052\u000a",
        "date" : "2026-03-18 20:13:55 +0700",
        "id" : "2564ea73b7b581ff1d8bc069307ca50afe4e40e1",
        "msg" : "doc/manuals: update MmeItem related info",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "doc/manuals/chapters/rest.adoc"
          },
          {
            "editType" : "edit",
            "file" : "doc/manuals/chapters/cli.adoc"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "contrib/jenkins_manuals.sh"
        ],
        "commitId" : "229ddcf488d7b3b4c2437fb2aea6dd6c9304d44f",
        "timestamp" : 1773839635000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
          "fullName" : "Vadim Yanitskiy"
        },
        "authorEmail" : "vyanitskiy@sysmocom.de",
        "comment" : "contrib: add jenkins_manuals.sh\u000a\u000aChange-Id: I54f0774575534519a2c40e0588f136c8a5e706f8\u000aRelated: osmo-ci.git Id62d806a648c8f3480cb4f162adf65f77c552848\u000aRelated: OS#6671\u000a",
        "date" : "2026-03-18 20:13:55 +0700",
        "id" : "229ddcf488d7b3b4c2437fb2aea6dd6c9304d44f",
        "msg" : "contrib: add jenkins_manuals.sh",
        "paths" : [
          {
            "editType" : "add",
            "file" : "contrib/jenkins_manuals.sh"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "rebar.config",
          "rebar.lock"
        ],
        "commitId" : "0bbd55db7a224491566a139bd845d3b9fdc17be6",
        "timestamp" : 1773839635000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
          "fullName" : "Vadim Yanitskiy"
        },
        "authorEmail" : "vyanitskiy@sysmocom.de",
        "comment" : "rebar.lock: bump exometer_report_statsd version\u000a\u000aThe new version is using ETS instead of dict for counter lookups.\u000aThis significantly reduces performance impact when multiple eNBs\u000aare registered, since the ETS provides O(1) average-case hash\u000alookups and in-place mutation.\u000a\u000aChange-Id: I931321a831215012aa8186d851d9a8d38908a4bf\u000a",
        "date" : "2026-03-18 20:13:55 +0700",
        "id" : "0bbd55db7a224491566a139bd845d3b9fdc17be6",
        "msg" : "rebar.lock: bump exometer_report_statsd version",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "rebar.lock"
          },
          {
            "editType" : "edit",
            "file" : "rebar.config"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "config/sys.config",
          "doc/manuals/chapters/configuration.adoc"
        ],
        "commitId" : "d6fc3187199c2c88f79c288dd828af30244ce4d0",
        "timestamp" : 1773839635000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
          "fullName" : "Vadim Yanitskiy"
        },
        "authorEmail" : "vyanitskiy@sysmocom.de",
        "comment" : "config/sys.config: increase StatsD reporter interval to 10s\u000a\u000aWhen running ttcn3-s1gw-test locally, I noticed OsmoS1GW consuming\u000a30-40% of a CPU core while idle (not serving any eNBs).  Profiling\u000awith etop pointed to `exometer_report_statsd` as the culprit: with\u000a~1720 metrics registered, it was sending ~1720 datagrams per second.\u000a\u000aA 1-second reporting interval causes noticeable CPU overhead as the\u000anumber of active metrics grows.  With per-eNB and per-MME counters,\u000athe metric set scales with the number of connected eNBs/MMEs.\u000a\u000aIncrease the default StatsD reporting interval from 1s to 10s to\u000areduce that overhead.  Update the documentation accordingly.\u000a\u000aChange-Id: Icd5e1a43d1df4a4909fe742aec67cc51a01bb857\u000a",
        "date" : "2026-03-18 20:13:55 +0700",
        "id" : "d6fc3187199c2c88f79c288dd828af30244ce4d0",
        "msg" : "config/sys.config: increase StatsD reporter interval to 10s",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "config/sys.config"
          },
          {
            "editType" : "edit",
            "file" : "doc/manuals/chapters/configuration.adoc"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/pfcp_peer.erl"
        ],
        "commitId" : "218ccce0506fb6d330f77f96d24aae81e451d10d",
        "timestamp" : 1773839635000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
          "fullName" : "Vadim Yanitskiy"
        },
        "authorEmail" : "vyanitskiy@sysmocom.de",
        "comment" : "pfcp_peer: define ?PFCP_ASSOC_SETUP_TIMEOUT\u000a\u000aChange-Id: I0b7299d9f3eaa8c0a3c7e4a4d6331d1ec5a1c779\u000a",
        "date" : "2026-03-18 20:13:55 +0700",
        "id" : "218ccce0506fb6d330f77f96d24aae81e451d10d",
        "msg" : "pfcp_peer: define ?PFCP_ASSOC_SETUP_TIMEOUT",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/pfcp_peer.erl"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/enb_registry.erl",
          "src/rest_server.erl",
          "src/enb_proxy.erl"
        ],
        "commitId" : "9dffb9c22018eed816fd471a67c79a28d09c4e64",
        "timestamp" : 1773839635000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
          "fullName" : "Vadim Yanitskiy"
        },
        "authorEmail" : "vyanitskiy@sysmocom.de",
        "comment" : "enb_proxy: signal mme_info() to the enb_registry\u000a\u000aWhen an MME is selected from the pool, pass the mme_registry:mme_info()\u000ato the enb_registry via notify_mme_connecting/2 (replacing /1).  This\u000amakes all MME configuration details (name, address, port, TAC list)\u000aavailable to consumers such as the REST server, without having to\u000alook them up separately from the mme_registry.\u000a\u000aChange-Id: I22e705b8196c9dcf436ed3c4d91c5c5a912e7282\u000aRelated: SYS#7052\u000a",
        "date" : "2026-03-18 20:13:55 +0700",
        "id" : "9dffb9c22018eed816fd471a67c79a28d09c4e64",
        "msg" : "enb_proxy: signal mme_info() to the enb_registry",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/enb_proxy.erl"
          },
          {
            "editType" : "edit",
            "file" : "src/enb_registry.erl"
          },
          {
            "editType" : "edit",
            "file" : "src/rest_server.erl"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/osmo_s1gw_sup.erl",
          "src/enb_proxy.erl"
        ],
        "commitId" : "d8965e175b2fd1b9988eb1d3304f0293f7c91804",
        "timestamp" : 1773839635000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
          "fullName" : "Vadim Yanitskiy"
        },
        "authorEmail" : "vyanitskiy@sysmocom.de",
        "comment" : "enb_proxy: obtain sctp_client sockopts from the env directly\u000a\u000aInstead of passing the MmeConnCfg (sctp_client:cfg()) all the way\u000afrom osmo_s1gw_sup through sctp_server (as priv) into enb_proxy\u000a(as state), read the sctp_client configuration in-place via\u000aosmo_s1gw:get_env/2 when it is actually needed (connecting/enter).\u000a\u000aThis works because osmo_s1gw_sup already normalizes and writes back\u000athe complete sctp_client config to the application env (set_env/2)\u000abefore starting the supervision tree.\u000a\u000aAs a result, mme_conn_cfg is removed from enb_proxy's state record,\u000astart_link/2 no longer uses its Priv argument, and server_cfg/1 is\u000asimplified to server_cfg/0.\u000a\u000aChange-Id: Ic77d3eb3351c8981c87fa4b6febcdeb814b9187b\u000a",
        "date" : "2026-03-18 20:13:55 +0700",
        "id" : "d8965e175b2fd1b9988eb1d3304f0293f7c91804",
        "msg" : "enb_proxy: obtain sctp_client sockopts from the env directly",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/osmo_s1gw_sup.erl"
          },
          {
            "editType" : "edit",
            "file" : "src/enb_proxy.erl"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "priv/openapi.json",
          "include/osmo_s1gw.hrl",
          "doc/manuals/chapters/rest.adoc",
          "src/rest_server.erl",
          "src/osmo_s1gw_sup.erl",
          "doc/manuals/chapters/cli.adoc",
          "contrib/osmo-s1gw-cli.py",
          "contrib/openapi.yaml"
        ],
        "commitId" : "eee27f79224cd06fdab9f2e1675b672ba05d16eb",
        "timestamp" : 1773839635000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
          "fullName" : "Vadim Yanitskiy"
        },
        "authorEmail" : "vyanitskiy@sysmocom.de",
        "comment" : "[REST] Add GET /config endpoint (ConfigRead)\u000a\u000aThis endpoint returns the effective runtime configuration that\u000aOsmoS1GW is currently using, with all defaults applied.  This\u000areflects the values read via `osmo_s1gw:get_env/2` at startup.\u000a\u000aChange-Id: Ic6c9562a541e4a0728257538887537aac6b99b97\u000aRelated: SYS#7066\u000a",
        "date" : "2026-03-18 20:13:55 +0700",
        "id" : "eee27f79224cd06fdab9f2e1675b672ba05d16eb",
        "msg" : "[REST] Add GET /config endpoint (ConfigRead)",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/osmo_s1gw_sup.erl"
          },
          {
            "editType" : "edit",
            "file" : "doc/manuals/chapters/cli.adoc"
          },
          {
            "editType" : "add",
            "file" : "include/osmo_s1gw.hrl"
          },
          {
            "editType" : "edit",
            "file" : "priv/openapi.json"
          },
          {
            "editType" : "edit",
            "file" : "contrib/openapi.yaml"
          },
          {
            "editType" : "edit",
            "file" : "src/rest_server.erl"
          },
          {
            "editType" : "edit",
            "file" : "contrib/osmo-s1gw-cli.py"
          },
          {
            "editType" : "edit",
            "file" : "doc/manuals/chapters/rest.adoc"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "priv/openapi.json",
          "doc/manuals/chapters/cli.adoc",
          "contrib/osmo-s1gw-cli.py",
          "contrib/openapi.yaml",
          "src/rest_server.erl"
        ],
        "commitId" : "c1001d5b493483502ba2df813be2cdd98498b54c",
        "timestamp" : 1773842253000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
          "fullName" : "Vadim Yanitskiy"
        },
        "authorEmail" : "vyanitskiy@sysmocom.de",
        "comment" : "[REST] Implement eNB/MME selection by addr-port\u000a\u000aAdd support for selecting an MME or eNB by remote address and port\u000ain the REST API and CLI.  The selector format is `addr:IP:PORT` for\u000aMMEs and `enb-conn:IP:PORT` for eNBs, where IP can be an IPv4 or\u000aIPv6 address.  The colon is used as the address/port separator.\u000a\u000aChange-Id: If02c8de1e1b7214bba868eee35233a79d0704dc5\u000aRelated: SYS#7066\u000a",
        "date" : "2026-03-18 20:57:33 +0700",
        "id" : "c1001d5b493483502ba2df813be2cdd98498b54c",
        "msg" : "[REST] Implement eNB/MME selection by addr-port",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "contrib/osmo-s1gw-cli.py"
          },
          {
            "editType" : "edit",
            "file" : "priv/openapi.json"
          },
          {
            "editType" : "edit",
            "file" : "contrib/openapi.yaml"
          },
          {
            "editType" : "edit",
            "file" : "src/rest_server.erl"
          },
          {
            "editType" : "edit",
            "file" : "doc/manuals/chapters/cli.adoc"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "doc/manuals/chapters/cli.adoc",
          "contrib/osmo-s1gw-cli.py",
          "src/pfcp_peer.erl",
          "src/rest_server.erl"
        ],
        "commitId" : "82e567823e275985a3ec5dba8a1732790c676334",
        "timestamp" : 1773842351000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
          "fullName" : "Vadim Yanitskiy"
        },
        "authorEmail" : "vyanitskiy@sysmocom.de",
        "comment" : "[REST] Implement PfcpAssoc{Setup,Release}\u000a\u000aChange-Id: I2e24544563e4c4d23bb3d8a4a7b5434191b482d8\u000aRelated: SYS#7066\u000a",
        "date" : "2026-03-18 20:59:11 +0700",
        "id" : "82e567823e275985a3ec5dba8a1732790c676334",
        "msg" : "[REST] Implement PfcpAssoc{Setup,Release}",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "contrib/osmo-s1gw-cli.py"
          },
          {
            "editType" : "edit",
            "file" : "src/rest_server.erl"
          },
          {
            "editType" : "edit",
            "file" : "src/pfcp_peer.erl"
          },
          {
            "editType" : "edit",
            "file" : "doc/manuals/chapters/cli.adoc"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "priv/openapi.json",
          "doc/manuals/chapters/cli.adoc",
          "doc/manuals/chapters/rest.adoc",
          "contrib/osmo-s1gw-cli.py",
          "contrib/openapi.yaml",
          "src/rest_server.erl"
        ],
        "commitId" : "45d9eb03d0c8e401817125ce403f5833e36178b9",
        "timestamp" : 1773842351000,
        "author" : {
          "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
          "fullName" : "Vadim Yanitskiy"
        },
        "authorEmail" : "vyanitskiy@sysmocom.de",
        "comment" : "[REST] EnbItem: expose name of the selected MME\u000a\u000aFor each eNB connection, include the name of the MME that was selected\u000afrom the pool.  Update the OpenAPI spec, CLI (enb_list/enb_info tables),\u000aand user manual accordingly.\u000a\u000aChange-Id: I4839275efa5d3545e84d684ad1b8b989214ef76a\u000aRelated: SYS#7066, SYS#7052\u000a",
        "date" : "2026-03-18 20:59:11 +0700",
        "id" : "45d9eb03d0c8e401817125ce403f5833e36178b9",
        "msg" : "[REST] EnbItem: expose name of the selected MME",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "doc/manuals/chapters/rest.adoc"
          },
          {
            "editType" : "edit",
            "file" : "priv/openapi.json"
          },
          {
            "editType" : "edit",
            "file" : "contrib/openapi.yaml"
          },
          {
            "editType" : "edit",
            "file" : "contrib/osmo-s1gw-cli.py"
          },
          {
            "editType" : "edit",
            "file" : "src/rest_server.erl"
          },
          {
            "editType" : "edit",
            "file" : "doc/manuals/chapters/cli.adoc"
          }
        ]
      }
    ],
    "kind" : "git"
  },
  "culprits" : [
    {
      "absoluteUrl" : "https://jenkins.osmocom.org/jenkins/user/fixeria",
      "fullName" : "Vadim Yanitskiy"
    }
  ],
  "runs" : [
    {
      "number" : 750,
      "url" : "https://jenkins.osmocom.org/jenkins/view/Smalltalk/job/master-osmo-s1gw/a1=default,a2=default,a3=default,a4=default,label=osmocom-master/750/"
    }
  ]
}