commit
d75ca3b072
2 changed files with 47 additions and 0 deletions
|
@ -9,6 +9,7 @@ script:
|
|||
- cargo test --verbose --features "toml yaml"
|
||||
- cargo test --doc
|
||||
- cargo test --verbose --no-default-features
|
||||
- cargo run --bin build-bot
|
||||
notifications:
|
||||
email: false
|
||||
irc:
|
||||
|
|
46
src/bin/build-bot.rs
Normal file
46
src/bin/build-bot.rs
Normal file
|
@ -0,0 +1,46 @@
|
|||
extern crate irc;
|
||||
|
||||
use irc::client::prelude::*;
|
||||
use std::default::Default;
|
||||
use std::env;
|
||||
|
||||
fn main() {
|
||||
let repository_slug = env::var("TRAVIS_REPO_SLUG").unwrap();
|
||||
let branch = env::var("TRAVIS_BRANCH").unwrap();
|
||||
let commit = env::var("TRAVIS_COMMIT").unwrap();
|
||||
let commit_message = env::var("TRAVIS_COMMIT_MESSAGE").unwrap();
|
||||
|
||||
let config = Config {
|
||||
nickname: Some("irc-crate-ci".to_owned()),
|
||||
server: Some("irc.pdgn.co".to_owned()),
|
||||
use_ssl: Some(true),
|
||||
..Default::default()
|
||||
};
|
||||
|
||||
let mut reactor = IrcReactor::new().unwrap();
|
||||
let client = reactor.prepare_client_and_connect(&config).unwrap();
|
||||
client.identify().unwrap();
|
||||
|
||||
reactor.register_client_with_handler(client, move |client, message| {
|
||||
match message.command {
|
||||
Command::Response(Response::RPL_ISUPPORT, _, _) => {
|
||||
client.send_privmsg(
|
||||
"#commits",
|
||||
format!(
|
||||
"[{}/{}] ({}) {}",
|
||||
repository_slug,
|
||||
branch,
|
||||
&commit[..7],
|
||||
commit_message
|
||||
),
|
||||
)?;
|
||||
client.send_quit("QUIT")?;
|
||||
}
|
||||
_ => (),
|
||||
};
|
||||
|
||||
Ok(())
|
||||
});
|
||||
|
||||
reactor.run().unwrap();
|
||||
}
|
Loading…
Reference in a new issue