npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

hubot-ibmcloud-objectstorage

v0.1.8

Published

A Hubot script for managing Object Storage containers

Downloads

41

Readme

Build Status Coverage Status Dependency Status npm

hubot-ibmcloud-objectstorage

A Hubot script for managing Object Storage containers messages with IBM Object Storage.

Getting Started

Usage

Steps for adding this to your existing hubot:

  1. cd into your hubot directory
  2. Install the Swift Object Storage functionality with npm install hubot-ibmcloud-objectstorage --save
  3. Add hubot-ibmcloud-objectstorage to your external-scripts.json
  4. Add the necessary environment variables for Object Storage
export HUBOT_OBJECT_STORAGE_AUTH_URL=<URL>
export HUBOT_OBJECT_STORAGE_USER_ID=<USER_ID>
export HUBOT_OBJECT_STORAGE_PASSWORD=<PASSWORD>
export HUBOT_OBJECT_STORAGE_PROJECT_ID=<PROJECT_ID>
export HUBOT_OBJECT_STORAGE_BLUEMIX_REGION=dallas
  1. If you would like to enable NLC search, you will need to configure the following NLC variables:
export HUBOT_WATSON_NLC_URL=<NLC_URL>
export HUBOT_WATSON_NLC_USERNAME=<NLC_USERNAME>
export HUBOT_WATSON_NLC_PASSWORD=<NLC_PASSWORD>
  1. The search feature also has a few additional variables that can be set. Each has a default value if unset.
    • HUBOT_OBJECT_STORAGE_SEARCH_CLASSIFIER_NAME - determines what classifier name is used.
    • HUBOT_OBJECT_STORAGE_SEARCH_CONFIDENCE_MIN - determines the minimum confidence level for a Watson classify call. The number should be a float less than 1 and greater than 0. Default value is 0.25. Classify results that are less than this threshold will be filtered out of the results.
    • HUBOT_OBJECT_STORAGE_SEARCH_RESULT_LIMIT - limits the number of results returned from search. Currently it defaults to 3 results.
    • HUBOT_OBJECT_STORAGE_CLASSIFIER_CLEANUP_INTERVAL - determines how frequently old classifiers are automatically cleaned up.
export HUBOT_OBJECT_STORAGE_SEARCH_CLASSIFIER_NAME=<classiferName>
export HUBOT_OBJECT_STORAGE_SEARCH_CONFIDENCE_MIN=<confidenceLevel>
export HUBOT_OBJECT_STORAGE_SEARCH_RESULT_LIMIT=<searchResultLimit>
export HUBOT_OBJECT_STORAGE_CLASSIFIER_CLEANUP_INTERVAL=<cleanupInterval>
  1. Start up your bot & off to the races!

Commands

  • hubot objectstorage help - Show available commands in the ibmcloud objectstorage category.
  • hubot objectstorage container list - Show all Object Storage containers
  • hubot objectstorage container details <container> - Lists the objects inside of object storage container. is optional. If omitted, you can select a container from a list.
  • hubot objectstorage retrieve <container> <object> - Retrieves object found in the container . Both and are optional. If omitted, you will be prompted to select them.
  • hubot objectstorage search <searchPhrase> - Search Object Storage for . Objects matching the will be returned to the adapter.

Hubot Adapter Setup

Hubot supports a variety of adapters to connect to popular chat clients. For more feature rich experiences you can setup the following adapters:

Cognitive Setup

This project supports natural language interactions using Watson and other Bluemix services. For more information on enabling these features, refer to Cognitive Setup.

Development

Please refer to the CONTRIBUTING.md before starting any work. Steps for running this script for development purposes:

Configuration Setup

  1. Create config folder in root of this project.
  2. Create env in the config folder, with the following contents:
export HUBOT_OBJECT_STORAGE_AUTH_URL=<URL>
export HUBOT_OBJECT_STORAGE_USER_ID=<USER_ID>
export HUBOT_OBJECT_STORAGE_PASSWORD=<PASSWORD>
export HUBOT_OBJECT_STORAGE_PROJECT_ID=<PROJECT_ID>
export HUBOT_OBJECT_STORAGE_BLUEMIX_REGION=dallas
  1. In order to view content in chat clients you will need to add hubot-ibmcloud-formatter to your external-scripts.json file. Additionally, if you want to use hubot-help to make sure your command documentation is correct. Create external-scripts.json in the root of this project, with the following contents:
[
    "hubot-help",
    "hubot-ibmcloud-formatter"
]
  1. Lastly, run npm install to obtain all the dependent node modules.

Running Hubot with adapters

Hubot supports a variety of adapters to connect to popular chat clients.

If you just want to use:

License

See LICENSE.txt for license information.

Contribute

Please check out our Contribution Guidelines for detailed information on how you can lend a hand.