expose functionality as a crate for testing
This commit is contained in:
parent
2cc49b86db
commit
d5b7b59e3e
|
@ -2,7 +2,7 @@ use crate::{changelog, cmd::*, git, version};
|
|||
use anyhow::Result;
|
||||
use std::path::PathBuf;
|
||||
|
||||
pub(crate) async fn run(
|
||||
pub async fn run(
|
||||
common: Common,
|
||||
fname: PathBuf,
|
||||
tag: Option<String>,
|
||||
|
|
|
@ -3,7 +3,7 @@ use anyhow::Result;
|
|||
use git2::Repository;
|
||||
use url::Url;
|
||||
|
||||
pub(crate) async fn run(env: DroneEnv) -> Result<()> {
|
||||
pub async fn run(env: DroneEnv) -> Result<()> {
|
||||
let common: Common = env.clone().into();
|
||||
|
||||
let default_branch = {
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
use std::path::PathBuf;
|
||||
use structopt::StructOpt;
|
||||
|
||||
pub(crate) mod cut;
|
||||
pub(crate) mod drone_plugin;
|
||||
pub mod cut;
|
||||
pub mod drone_plugin;
|
||||
|
||||
#[derive(StructOpt, Debug, Clone)]
|
||||
pub(crate) struct Common {
|
||||
pub struct Common {
|
||||
/// The gitea server to connect to
|
||||
#[structopt(short, long, env = "GITEA_SERVER")]
|
||||
pub server: String,
|
||||
|
@ -36,7 +36,7 @@ pub(crate) struct Common {
|
|||
}
|
||||
|
||||
#[derive(StructOpt, Debug, Clone)]
|
||||
pub(crate) struct DroneEnv {
|
||||
pub struct DroneEnv {
|
||||
// Given by drone
|
||||
/// push URL
|
||||
#[structopt(long, env = "DRONE_GIT_HTTP_URL")]
|
||||
|
@ -99,7 +99,7 @@ impl Into<Common> for DroneEnv {
|
|||
}
|
||||
|
||||
#[derive(StructOpt, Debug)]
|
||||
pub(crate) struct ReleaseMeta {
|
||||
pub struct ReleaseMeta {
|
||||
/// Release name
|
||||
#[structopt(short, long)]
|
||||
pub name: Option<String>,
|
||||
|
@ -113,7 +113,7 @@ pub(crate) struct ReleaseMeta {
|
|||
|
||||
#[derive(StructOpt, Debug)]
|
||||
#[structopt(about = "Gitea release assistant")]
|
||||
pub(crate) enum Cmd {
|
||||
pub enum Cmd {
|
||||
/// Create a new tag and release on Gitea
|
||||
#[structopt(alias = "release")]
|
||||
Cut {
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
pub mod changelog;
|
||||
pub mod cmd;
|
||||
pub mod git;
|
||||
pub mod version;
|
||||
|
||||
// Name your user agent after your app?
|
||||
pub static APP_USER_AGENT: &str =
|
||||
concat!(env!("CARGO_PKG_NAME"), "/", env!("CARGO_PKG_VERSION"));
|
11
src/main.rs
11
src/main.rs
|
@ -1,16 +1,7 @@
|
|||
use anyhow::Result;
|
||||
use structopt::StructOpt;
|
||||
|
||||
mod changelog;
|
||||
mod cmd;
|
||||
mod git;
|
||||
mod version;
|
||||
|
||||
pub(crate) use cmd::*;
|
||||
|
||||
// Name your user agent after your app?
|
||||
pub(crate) static APP_USER_AGENT: &str =
|
||||
concat!(env!("CARGO_PKG_NAME"), "/", env!("CARGO_PKG_VERSION"));
|
||||
use ::gitea_release::{cmd::{self, Cmd}};
|
||||
|
||||
#[tokio::main]
|
||||
async fn main() -> Result<()> {
|
||||
|
|
Loading…
Reference in New Issue