diff --git a/.github/scripts/constants.sh b/.github/scripts/constants.sh index 760a8f732..a717d15f4 100644 --- a/.github/scripts/constants.sh +++ b/.github/scripts/constants.sh @@ -1,7 +1,8 @@ # Igluctl INSTALL_DIR="/tmp" -VALIDATOR_V="0.7.2" -VALIDATOR_URI="https://github.com/snowplow-incubator/igluctl/releases/download/${VALIDATOR_V}/igluctl" +VALIDATOR_V="0.10.1" +VALIDATOR_ZIP="igluctl_${VALIDATOR_V}.zip" +VALIDATOR_URI="https://github.com/snowplow/igluctl/releases/download/${VALIDATOR_V}/$VALIDATOR_ZIP" VALIDATOR_JAR="igluctl" IGLUCTL="${INSTALL_DIR}/${VALIDATOR_JAR}" diff --git a/.github/scripts/requirements.sh b/.github/scripts/requirements.sh index 9216a26d6..e107c17f7 100644 --- a/.github/scripts/requirements.sh +++ b/.github/scripts/requirements.sh @@ -9,6 +9,8 @@ function install_igluctl() { then echo "igluctl not found, downloading..." wget "${VALIDATOR_URI}" -P "${INSTALL_DIR}" + echo "unzipping..." + unzip ${INSTALL_DIR}/$VALIDATOR_ZIP -d ${INSTALL_DIR} echo "done!" else echo "igluctl is already downloaded!" diff --git a/CHANGELOG b/CHANGELOG index c0cf740cb..079facb3b 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,9 @@ +Release 137 (2022-11-02) +------------------------ +Add nl.basjes/yauaa_context/jsonschema/1-0-4 (#1216) +Add dev.amp.snowplow/amp_session/jsonschema/1-0-0 (#1234) +Bump igluctl version to allow schema lists in dev registry (#1236) + Release 136 (2022-09-15) ------------------------ Add com.snowplowanalytics.mobile/remote_config/jsonschema/1-0-1 (#1225) diff --git a/schemas/dev.amp.snowplow/amp_session/jsonschema/1-0-0 b/schemas/dev.amp.snowplow/amp_session/jsonschema/1-0-0 new file mode 100644 index 000000000..0b6a109f2 --- /dev/null +++ b/schemas/dev.amp.snowplow/amp_session/jsonschema/1-0-0 @@ -0,0 +1,45 @@ +{ + "$schema": "http://iglucentral.com/schemas/com.snowplowanalytics.self-desc/schema/jsonschema/1-0-0#", + "self": { + "vendor": "dev.amp.snowplow", + "name": "amp_session", + "format": "jsonschema", + "version": "1-0-0" + }, + "description": "Schema for AMP session identification", + "properties": { + "ampSessionId": { + "type": "integer", + "minimum": 0, + "maximum": 2147483647, + "description": "An identifier for the AMP session." + }, + "ampSessionIndex": { + "type": "integer", + "minimum": 0, + "maximum": 2147483647, + "description": "The index of the current session for this user." + }, + "sessionEngaged": { + "type": "boolean", + "description": "If there has been any kind of user engagement in the AMP session. Engagement in this context means if the page is visible, has focus and is in the foreground." + }, + "sessionCreationTimestamp": { + "type": "integer", + "minimum": 0, + "maximum": 9007199254740991, + "description": "Timestamp at which the session was created in milliseconds elapsed since the UNIX epoch." + }, + "lastSessionEventTimestamp": { + "type": ["integer", "null"], + "minimum": 0, + "maximum": 9007199254740991, + "description": "Timestamp at which the last event took place in the session in milliseconds elapsed since the UNIX epoch." + } + }, + "additionalProperties": false, + "type": "object", + "required": [ + "ampSessionId","ampSessionIndex","sessionEngaged","sessionCreationTimestamp" + ] +} \ No newline at end of file diff --git a/schemas/nl.basjes/yauaa_context/jsonschema/1-0-4 b/schemas/nl.basjes/yauaa_context/jsonschema/1-0-4 new file mode 100644 index 000000000..a6244f015 --- /dev/null +++ b/schemas/nl.basjes/yauaa_context/jsonschema/1-0-4 @@ -0,0 +1,233 @@ +{ + "$schema": "http://iglucentral.com/schemas/com.snowplowanalytics.self-desc/schema/jsonschema/1-0-0#", + "description": "Schema for a context generated by the YAUAA enrichment after parsing the user agent", + "self": { + "vendor": "nl.basjes", + "name": "yauaa_context", + "format": "jsonschema", + "version": "1-0-4" + }, + "type": "object", + "properties": { + "deviceClass": { + "description": "See https://yauaa.basjes.nl/README-Output.html", + "enum": ["Desktop", "Anonymized", "Unknown", "UNKNOWN", "Mobile", "Tablet", "Phone", "Watch", "Virtual Reality", "eReader", "Set-top box", "TV", "Game Console", "Home Appliance", "Handheld Game Console", "Voice", "Car", "Robot", "Robot Mobile", "Spy", "Hacker", "Augmented Reality", "Robot Imitator"] + }, + "deviceName": { + "description": "Example: Google Nexus 6", + "type": "string", + "maxLength": 256 + }, + "deviceBrand": { + "description": "Example: Google", + "type": "string", + "maxLength": 128 + }, + "deviceCpu": { + "type": "string", + "maxLength": 128 + }, + "deviceCpuBits": { + "type": "string", + "maxLength": 128 + }, + "deviceFirmwareVersion": { + "type": "string", + "maxLength": 1000 + }, + "deviceVersion": { + "type": "string", + "maxLength": 1000 + }, + "operatingSystemClass": { + "description": "See https://yauaa.basjes.nl/README-Output.html", + "type": "string", + "enum": ["Desktop", "Mobile", "Cloud", "Embedded", "Game Console", "Hacker", "Anonymized", "Unknown"] + }, + "operatingSystemName": { + "description": "Examples: Linux, Android.", + "type": "string", + "maxLength": 256 + }, + "operatingSystemVersion": { + "type": "string", + "maxLength": 1000 + }, + "operatingSystemNameVersion": { + "type": "string", + "maxLength": 1000 + }, + "operatingSystemVersionBuild": { + "type": "string", + "maxLength": 1000 + }, + "layoutEngineClass": { + "description": "See https://yauaa.basjes.nl/README-Output.html", + "type": "string", + "enum": ["Browser", "Mobile App", "Hacker", "Robot", "Unknown", "Special", "Cloud", "eReader"] + }, + "layoutEngineName": { + "type": "string", + "maxLength": 256 + }, + "layoutEngineVersion": { + "type": "string", + "maxLength": 1000 + }, + "layoutEngineVersionMajor": { + "type": "string", + "maxLength": 1000 + }, + "layoutEngineNameVersion": { + "type": "string", + "maxLength": 1000 + }, + "layoutEngineNameVersionMajor": { + "type": "string", + "maxLength": 1000 + }, + "layoutEngineBuild": { + "type": "string", + "maxLength": 1000 + }, + "agentClass": { + "description": "See https://yauaa.basjes.nl/README-Output.html", + "type": "string", + "enum": ["Browser", "Browser Webview", "Mobile App", "Robot", "Robot Mobile", "Cloud Application", "Email Client", "Voice", "Special", "Testclient", "Hacker", "Unknown", "Desktop App", "eReader"] + }, + "agentName": { + "description": "Example: Chrome.", + "type": "string", + "maxLength": 256 + }, + "agentVersion": { + "type": "string", + "maxLength": 1000 + }, + "agentVersionMajor": { + "type": "string", + "maxLength": 1000 + }, + "agentNameVersion": { + "type": "string", + "maxLength": 1000 + }, + "agentNameVersionMajor": { + "type": "string", + "maxLength": 1000 + }, + "agentBuild": { + "type": "string", + "maxLength": 1000 + }, + "agentLanguage": { + "type": "string", + "maxLength": 1000 + }, + "agentLanguageCode": { + "type": "string", + "maxLength": 1000 + }, + "agentInformationEmail": { + "type": "string" + }, + "agentInformationUrl": { + "type": "string" + }, + "agentSecurity": { + "type": "string", + "enum": ["Weak security", "Strong security", "Unknown", "Hacker", "No security"] + }, + "agentUuid": { + "type": "string" + }, + "webviewAppName": { + "type": "string" + }, + "webviewAppVersion": { + "type": "string" + }, + "webviewAppVersionMajor": { + "type": "string", + "maxLength": 1000 + }, + "webviewAppNameVersionMajor": { + "type": "string", + "maxLength": 1000 + }, + "facebookCarrier": { + "type": "string" + }, + "facebookDeviceClass": { + "type": "string", + "maxLength": 1024 + }, + "facebookDeviceName": { + "type": "string", + "maxLength": 1024 + }, + "facebookDeviceVersion": { + "type": "string" + }, + "facebookFBOP": { + "type": "string" + }, + "facebookFBSS": { + "type": "string" + }, + "facebookOperatingSystemName": { + "type": "string" + }, + "facebookOperatingSystemVersion": { + "type": "string" + }, + "anonymized": { + "type": "string" + }, + "hackerAttackVector": { + "type": "string" + }, + "hackerToolkit": { + "type": "string" + }, + "koboAffiliate": { + "type": "string" + }, + "koboPlatformId": { + "type": "string" + }, + "iECompatibilityVersion": { + "type": "string", + "maxLength": 1000 + }, + "iECompatibilityVersionMajor": { + "type": "string", + "maxLength": 1000 + }, + "iECompatibilityNameVersion": { + "type": "string", + "maxLength": 1000 + }, + "iECompatibilityNameVersionMajor": { + "type": "string", + "maxLength": 1000 + }, + "carrier": { + "type": "string" + }, + "gSAInstallationID": { + "type": "string" + }, + "networkType": { + "type": "string" + }, + "operatingSystemNameVersionMajor": { + "type": "string" + }, + "operatingSystemVersionMajor": { + "type": "string" + } + }, + "required": ["deviceClass"], + "additionalProperties": false +}