Phoebus
This is the README for Phoebus, a Ruby 2.2.3 Gem that communicates with Coeus, the content repository for the Schoolbzz platform, housing parent, faculty, and messaging content for multiple institutions. This gem encapsulates transport functionality and abstracts messaging for use by web front-end and mobile services for Schoolbzz. Brand considerations have driven the following nomenclature mapping, specifically:
- Faculty <=> Educators
- Parent <=> Caregivers
- Messages <=> Announcements
to enable an Educator (faculty) to post Announcements (messages) to Caregivers (parent) within a specific Institution through the Schoolbzz platform.
CODICIL
Started out as Phoebe, Titaness of the "bright" intellect and prophecy, consort of Coeus. Unfortunately, Ruby Gems doesn't include reserved names in their search results
- Search: https://rubygems.org/search?utf8=✓&query=phoebe) - should show no gems using this name.
- Browse: http://rubygems.org/gems/phoebus - shows this gem name is reserved (as of 0.0.0).
So had to create a new project or modify the existing project and substituting 'hoebus' for 'hoebe' was easiest. Turns out that "Phoebus" (bright or brilliant) is the epithet of Apollo, Coeus' grandson through his daughter Leto.
INITIALIZATION
Initializing the environment for creating a gem using rvm, gem, bundler and rake.
RVM
rvm use ruby-2.3.3@phoebus --ruby-version --create
GEMS
gem install bundler
BUNDLER
bundler - setup cd ~/Sites bundle gem phoebus cd phoebus bundle install bundle update
FILES AND DIRECTORIES
phoebus.gemspec
Gemfile
source "https://rubygems.org" do gem 'grpc', '>=1.2' gem 'grpc-tools', '>=1.2' end
Rakefile
require 'bundler' require 'rake/testtask' Bundler::GemHelper.install_tasks
Rake::TestTask.new do |t| t.libs << 'test' t.pattern = "test/*_test.rb" end
lib/phoebus/coeus*
coeus.rb coeus_pb.rb coeus_services_pb.rb
lib/phoebus.rb
require 'phoebus/coeus'
module Phoebus def self.ipsum "Lorem ipsum dolor sit amet." end end
lib/version.rb module Phoebus VERSION = "0.0.1" end
mkdir test
test/test_helper.rb
require 'phoebus' require 'minitest/unit' require 'minitest/autorun' require 'minitest/pride'
Workflow
http://bundler.io/v1.12/bundler_workflow.html
gem build OR rake gem build phoebus.gemspec gem push phoebus-0.0.2.gem
rake rake -T rake build rake install
git
git add -A
git commit -a -m "Update 0.0.2"
git push origin master
test irb -Ilib -rphoebus Phoebus.ipsum
rake release
upon Gemfile change
bundle install
GIT
login to bitbucket and create repository manually instead of this
git remote add origin git@bitbucket.org:brilliantarc/phoebus.git
commit to bitbucket repository
git init
git add .
git add -A
git commit -a -m "Initialize Phoebus gem to talk to Coeus."
git push origin master
ORIGINAL
generate gem credentials curl -u brilliantarc https://rubygems.org/api/v1/api_key.yaml > ~/.gem/credentials; chmod 0600 ~/.gem/credentials
Files
.gitignore
# Ignore Mac
.DS_Store
._*
lib/phoebus.rb
def self.ipsum
"Lorem ipsum dolor sit amet."
end
phoebus.gemspec
cp coeus/.../ruby/ use require RELATIVE
require_relative coeus_pb.rb coeus_services_pb.rb
GEM
edit Gemfile bundle update
us.rb", "lib/phoebus/coeus.rb", "lib/phoebus/coeus_pb.rb", "lib/phoebus/coeus_services_pb.rb"]
gem OR rake
gem build phoebus.gemspec
gem install phoebus-0.0.2.gem
rake build
rake install
test irb -Ilib -rphoebus Phoebus.ipsum
REFERENCES
TODOC
System dependencies
Configuration
Database creation
Database initialization
How to run the test suite
Services (job queues, cache servers, search engines, etc.)
Deployment instructions
TODO
git add -A
gem build phoebus.gemspec
gem install phoebus-0.0.1.gem
git commit -a -m "Phoebus 0.0.1."
git push origin master
gem push phoebus-0.0.1.gem
END
Installation
Add this line to your application's Gemfile:
gem 'phoebus'
And then execute:
$ bundle
Or install it yourself as:
$ gem install phoebus
Usage
TODO: Write usage instructions here
Development
After checking out the repo, run bin/setup to install dependencies. You can also run bin/console for an interactive prompt that will allow you to experiment.
To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/phoebus.