Browse Source

first release

master 0.0.1
zapashcanon 2 years ago
parent
commit
21f84d5f42
Signed by: zapashcanon GPG Key ID: 8981C3C62D1D28F1
  1. 34
      .build.yml
  2. 3
      CHANGES.md
  3. 32
      dune-project
  4. 34
      memo.opam

34
.build.yml

@ -2,6 +2,7 @@ image: debian/unstable
packages:
- opam
- ocaml
- curl
sources:
- https://git.zapashcanon.fr/zapashcanon/memo
environment:
@ -13,6 +14,9 @@ environment:
archive_dst: /var/www/fs.zapashcanon.fr/archive
secrets:
- ec1f49cd-38dc-41d9-89f4-c3b6ecd7bcad # ssh deploy key
- b5b0e36c-fe52-43c4-9103-0aa918ad175c # github token
- c9e55d80-7b6a-4ad4-81bd-921d2c3247b8 # dune release profile
- ff8575b8-7192-4e0c-9905-6d04142a4ec1 # git config
tasks:
- setup: |
opam init -y
@ -48,6 +52,32 @@ tasks:
cd $name
eval "$(opam env)"
dune clean
git archive -o ${name}-dev.tar.xz HEAD
archive_name=${name}-dev.tar.xz
git archive -o $archive_name HEAD
ssh $sshopts $deploy "mkdir -p $archive_dst/$name/"
scp $sshopts ${name}-dev.tar.xz $deploy:$archive_dst/$name/
scp $sshopts $archive_name $deploy:$archive_dst/$name/
rm $archive_name
- release: |
cd $name
eval "$(opam env)"
git describe --exact-match || exit 0
opam install -y dune-release
tag=$(git describe --exact-match)
dune-release distrib || true
archive_name=${name}-${tag}.tbz
ls _build/${archive_name}
scp $sshopts _build/${archive_name} $deploy:$archive_dst/$name/
url="https://fs.zapashcanon.fr/archive/${name}/${archive_name}"
echo $url > _build/${name}-${tag}.url
dune-release opam pkg
opam_file=_build/${name}.${tag}/opam
line_num="$(grep -n -e 'src:' $opam_file | cut -d: -f1)"
sed -i -e "${line_num}s|^.*| src: \"${url}\"|" $opam_file
line_num=$(($line_num + 1))
sed -i -e "${line_num}d" $opam_file
sed -i -e "${line_num}d" $opam_file
cd ..
echo -e "Host github.com\n\tStrictHostKeyChecking no\n" >> ~/.ssh/config
git clone https://github.com/Cameleo/opam-repository.git
cd $name
dune-release opam submit --no-auto-open -y

3
CHANGES.md

@ -0,0 +1,3 @@
## 0.0.1 - 2019-11-21
First release

32
dune-project

@ -1,3 +1,35 @@
(lang dune 1.11)
(name memo)
(license ISC)
(authors "Léo Andrès <contact@ndrs.fr>")
(maintainers "Léo Andrès <contact@ndrs.fr>")
(source
(uri git://git.zapashcanon.fr/zapashcanon/memo.git))
(bug_reports https://git.zapashcanon.fr/zapashcanon/memo/issues)
(homepage https://git.zapashcanon.fr/zapashcanon/memo)
(documentation https://doc.zapashcanon.fr/memo/)
(generate_opam_files true)
(explicit_js_mode)
(package
(name memo)
(synopsis "Memoïzation library")
(description
"memo is an OCaml library for memoïzation. It provides easy ways to memoïze a function, in a type-safe and modular way and the ability to get forgetful memoïzation.")
(depends
(ocaml
(>= 4.05.0))
(dune
(>= 1.11.0))
(bisect_ppx
(>= 1.4.1))))

34
memo.opam

@ -1,23 +1,31 @@
# This file is generated by dune, edit dune-project instead
opam-version: "2.0"
synopsis: "Memoïzation library"
version: "dev"
description:
"memo is an OCaml library for memoïzation. It provides easy ways to memoïze a function, in a type-safe and modular way and the ability to get forgetful memoïzation."
maintainer: ["Léo Andrès <contact@ndrs.fr>"]
authors: ["Léo Andrès <contact@ndrs.fr>"]
license: "ISC"
homepage: "https://git.zapashcanon.fr/zapashcanon/memo"
doc: "https://doc.zapashcanon.fr/memo/"
bug-reports: "https://git.zapashcanon.fr/zapashcanon/memo/issues"
authors: "Léo Andrès (zapashcanon) <leo@ndrs.fr>"
maintainer: "Léo Andrès (zapashcanon) <leo@ndrs.fr>"
dev-repo: "git+https://git.zapashcanon.fr/zapashcanon/memo.git"
depends: [
"ocaml"
"ocaml" {>= "4.05.0"}
"dune" {>= "1.11.0"}
"bisect_ppx" {>= "1.4.1"}
]
build: [
["dune" "build" "-p" name "-j" jobs]
["dune" "subst"] {pinned}
[
"dune"
"build"
"-p"
name
"-j"
jobs
"@install"
"@runtest" {with-test}
"@doc" {with-doc}
]
]
description: "Memo is a library for memoïzation."
dev-repo: "git://git.zapashcanon.fr/zapashcanon/memo.git"
Loading…
Cancel
Save