Skip to content

Repository files navigation

Nabto Edge IAM Util for iOS / Swift

This utility component simplifies user pairing and management through the IAM API on Nabto Edge embedded devices. Distributed as a Swift Package; it builds on top of the Nabto Edge Client SDK wrapper.

Supports iOS 13+.

Installation

Xcode

FileAdd Package Dependencies… and enter:

https://github.com/nabto/edge-iamutil-swift

Add the NabtoEdgeIamUtil library product to your target.

Package.swift

dependencies: [
    .package(url: "https://github.com/nabto/edge-iamutil-swift", from: "2.0.0")
],
targets: [
    .target(
        name: "YourTarget",
        dependencies: [
            .product(name: "NabtoEdgeIamUtil", package: "edge-iamutil-swift")
        ]
    )
]

Usage

See the documentation to learn how to use the IAM Util to simplify pairing and user management.

Also see the general intro to Nabto Edge IAM.

Development of the wrapper

git clone git@github.com:nabto/edge-iamutil-swift.git
cd edge-iamutil-swift
swift build

Or open Package.swift directly in Xcode:

open Package.swift

Running tests

The IamUtilTests_HostedTestDevices tests run against Nabto-hosted test devices and need nothing but network access:

swift test --skip IamUtilTests_LocalTestDevices

This is what CI runs (see .github/workflows/ci.yml).

The IamUtilTests_LocalTestDevices tests need the local test devices in test-devices/ to be running first - they are found through mDNS discovery on the local network:

cd test-devices
./run-all.sh &
cd ..
swift test

These tests are excluded from CI as mDNS discovery does not work on the GitHub Actions macOS runners.

About

This utility component simplifies user pairing and management through the IAM API on Nabto Edge embedded devices

Resources

Security policy

Stars

0 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages